我有一个存储过程,它使用几个表并创建一个交叉表结果集.为了创建交叉表结果集,我使用的CASE语句是根据表中的记录动态生成的.
是否可以使用ADO.NET Entity框架从此SP生成实体? Cuz每次尝试获取特定SP的列信息时,都会说选定的存储过程不返回任何列.
任何帮助,将不胜感激.
解决方法
我的团队成员最近遇到过类似的情况,其中存储过程生成各种动态sql并返回计算列,因此数据上下文不知道该怎么做.我自己还没有尝试过,但这是他声称的解决方案:
The solution is simply to put the line
“SET FMTONLY OFF;” into the proc.
This allows the Data Context to
actually generate the return class.
This works in this case,only because
the proc is doing nothing but querying
data.Full details here:
07000You only need the “SET FMTONLY OFF” in the proc long enough to generate the class. You can then comment it out.