加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-3 – 实体框架填充了我的文本字段,尽管它们不是固定

发布时间:2020-12-16 07:04:36 所属栏目:asp.Net 来源:网络整理
导读:我正在使用Entity Framework 4构建一个MVC3站点,我遇到了固定长度字段的问题. 当我在调试期间查看我的代码时,它显示MyEntity.Title =“Hello name”,标题填充到字段的最大长度. 这通常是在EDMX文件中具有固定字段长度或在底层数据库而不是varchar上使用char
我正在使用Entity Framework 4构建一个MVC3站点,我遇到了固定长度字段的问题.

当我在调试期间查看我的代码时,它显示MyEntity.Title =“Hello name”,标题填充到字段的最大长度.

这通常是在EDMX文件中具有固定字段长度或在底层数据库而不是varchar上使用char数据类型的问题.在这种情况下,这些都不正确,但问题字段最初可能是固定长度的.我已经手动更改了EDMX中的每个字段(并且模型已经重新生成),并且字段在数据库中从未固定长度(这是应用程序的起点)所以我想填充字段的需要是存储在Entity Framework配置中的某个位置,尚未更新.

当新记录添加到数据库时会出现问题 – 当创建对象时,标题将是正确的,当它从数据库实例化时会被填充.

为了摆脱填充,我需要做什么,这实际上搞砸了我的字符串比较,除非我修剪一切?

解决方法

事实证明,在.EDMX文件中,填充文件仍然列为nchar.通过模型编辑器无法看到这一点,更改它的唯一方法是在Visual Studio中右键单击模型并选择“打开方式…”然后使用 XML编辑器.违规字段看起来像这样:

<Property Name="MyProperty" Type="nchar" Nullable="false" MaxLength="50" />

将Type更改为nvarchar并再次运行模板似乎可以解决问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读