如何解决EF从未定义的表/视图中检索实体
| 是否可以从尚未在模型中定义的视图中检索记录,并可以通过使用列名或序数来检索其列值? 我写这段代码:AppContext ctx = new AppContext(\"name=DbConnString\");
string commandText = \"SELECT V.ID,V.Code,V.Description FROM vw_UserDefinedView AS V\";
ObjectQuery<DbDataRecord> query = new ObjectQuery<DbDataRecord>(commandText,ctx);
但是当我尝试执行它时发生了一个异常:
\'vw_UserDefinedView\' could not be resolved in the current scope or context. Make sure that all referenced variables are in scope,that required schemas are loaded,and that namespaces are referenced correctly. Near simple identifier,line 1,column 43.
有没有一种方法可以使用Entity Framework和ObjectContext(或DbContext)来实现?
最好的祝福,
阿尔贝托
解决方法
不,这是不可能的。正如消息中已经指出的那样:\“ \'vw_UserDefinedView \'在当前范围或上下文中无法解析。\”上下文(.edmx)无法识别此视图。您必须意识到您正在查询实体模型而不是数据库!
如果您不希望在实体模型中使用此视图(无论出于何种原因),则只需使用
SqlCommand
,SqlConnection
和SqlDataReader
来执行有关vw_UserDefinedView的语句。
更新
也许此链接可以为您提供进一步的帮助:实体框架:在运行时添加属性/实体
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。