MVC3命名以数字开头的列
我是MVC3 C#的新手。 我需要在数据库中有一个名为3DSecureStatus
的列用于遗留目的。
当我调用此列并在应用程序中插入时,我收到此错误:
[ModelValidationException:在模型生成期间检测到一个或多个validation错误:
System.Data.Edm.EdmProperty:Name:不允许指定名称:’_ 3 DSecureStatus’。 ]
在应用程序中,我将其定义为public string _3DSecureStatus { get; set; }
public string _3DSecureStatus { get; set; }
因为它不喜欢3
是列名的第一个字符。
有什么建议吗?
使用Column属性指定数据库列名称
[Column("3DSecureStatus")] public string ThreeDSecureStatus { get; set; }
或者使用流畅的映射
Property(x => x.ThreeDSecureStatus).HasColumnName("3DSecureStatus");
将_3DSecureStatus
重命名为其他内容。
entity framework代码优先不允许属性/列在名称的开头具有下划线或数字。
所以你必须改变它,直到修复它。
这实际上是一个entity framework错误,而不是MVC错误。 它看起来像是一些谷歌搜索强调,因为Code First字段名称的开头是无效的,并且不起作用。 如果可以,请尝试在其前面写一封信。