c# – Entity Framework数据库首先,相同的表和列名称映射
发布时间:2020-12-15 20:55:39 所属栏目:百科 来源:网络整理
导读:在我的数据库中,我有一个名为’Site’的表,其中包含“Site”列(请不要问为什么:)) 我正在使用数据库第一种方法.从数据库更新模型后,我有实体’Site’,其属性为’Site1′ public partial class Site{ ... public string Site1 { get; set; } ...} 这很好用,直
在我的数据库中,我有一个名为’Site’的表,其中包含“Site”列(请不要问为什么:))
我正在使用数据库第一种方法.从数据库更新模型后,我有实体’Site’,其属性为’Site1′ public partial class Site { ... public string Site1 { get; set; } ... } 这很好用,直到我开始使用简单的选择SqlQuery方法: context.Site.SqlQuery("SELECT * FROM dbo.Site WHERE SiteID IN(2,1)").ToArray(); 结果我收到错误:’数据读取器与指定的’aapModel.Site’不兼容.类型为“Site1”的成员在数据读取器中没有相应的具有相同名称的列. 我找到了一个在查询中更改列名的解决方案: context.Site.SqlQuery("SELECT Site as Site1 FROM dbo.Site WHERE SiteID IN(2,1)").ToArray(); 但它不灵活优雅. 解决方法
尝试这样的事情:
public partial class Site { [Column("Site1")] public string Site1 { get; set; } } 我注意到你的类是部分的,你确定你没有实体模型的映射类吗? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |