我在我的Sql Server Db中添加了一列,然后在VS i中从数据库更新模型,有一个模板自动生成一些代码。
代码编译正常,但是当我尝试访问数据库时,会发生以下错误:
数据阅读器与指定的内容不兼容 'CompassModel.tbSalesContract'。 “Finalized”类型的成员, 在数据读取器中没有相应的列具有相同的列 名。
Finalized是我添加到我的数据库中的新列。
有没有人知道如何追踪这一点,如果有的话,是否有一个修复或方法可以遵循以避免将来使用?
答案 0 :(得分:5)
如果您正在使用SP,则在该Or中更新新添加的列。如果您使用内联查询,请输入新添加列的确切名称。您正在谈论的模板不包含新添加的列名称。尝试编辑模板..问题将得到解决。
答案 1 :(得分:0)
如果您使用SP,请确保使用别名...即。例如:它应该写成
fieldname as'aliasname'
感谢, criss thomas
答案 2 :(得分:0)
希望这可以帮助某人,但是当我收到此错误时,我试图从存储过程中返回实体类型。
要解决此问题,我必须添加正确的函数导入映射。在您的edmx中,转到Model Browser视图并导航到Funtion Imports。右键单击您的sproc名称并选择函数导入映射。在那里,您可以将您的sproc返回结果映射到相应的实体属性。