【问题标题】:Get the Max Length of a column in Entity Framework获取实体框架中列的最大长度
【发布时间】:2013-02-21 21:18:44
【问题描述】:
当我将数据库导入我的 EDMX 模型时,我会得到以下关于最大长度的信息
在上图中,我有最大长度为 250
的字符串列
有没有办法检查(在编码时)这个最大长度,而不需要查看 EDMX 属性?
我希望如何显示信息的示例:
如果我键入 Class.ColumnName 之类的内容,它会在 Intellisense 中显示为摘要信息。
【问题讨论】:
标签:
c#
entity-framework
linq-to-entities
intellisense
sqldatatypes
【解决方案2】:
Intellisense 将显示设计器的文档 -> 摘要字段中的任何文本。这为您提供了一些选择。
1) 您可能是真正的强迫症患者,在设计器中编辑您的 EDMX 时,请确保始终填写此字段。
2) 您创建一些脚本来解析您的 .edmx(您可以像编辑任何 XML 文件一样对其进行编辑),查找指定了 MaxLength 的 <Property> 元素,然后添加 <Documentation> 和 <Summary>里面的元素,简单地说明最大长度是多少。例如解析:
<Property Name="USER_NAME" Type="String" MaxLength="50" Unicode="true" FixedLength="false" >
进入:
<Property Name="USER_NAME" Type="String" MaxLength="50" Unicode="true" FixedLength="false" >
<Documentation>
<Summary>Max length of 50</Summary>
</Documentation>
</Property>
编辑完成后,您只需打开设计器并再次保存即可重建 .Designer.cs/vb。
3) 不知何故让 Visual Studio 知道一个类来自 EDMX,然后返回解析 EDMX 以获取 MaxLength,然后更新 Intellisense 以相应地显示。 (我不知道这是否可能。)