从具有动态 SQL 的存储过程创建实体

发布于 2024-09-16 03:02:52 字数 197 浏览 2 评论 0原文

我有一个存储过程,它使用几个表并创建一个交叉表结果集。为了创建交叉表结果集,我使用 CASE 语句,这些语句是根据表中的记录动态生成的。

是否可以使用 ADO.NET 实体框架从此 SP 生成实体?因为每次我尝试获取特定 SP 的列信息时,它都会说所选存储过程不返回任何列

任何帮助将不胜感激。

I have a stored procedure which uses a couple of tables and creates a cross-tab result set. For creating the cross-tab result set I am using CASE statements which are dynamically generated on basis of records in a table.

Is it possible to generate an entity from this SP using ADO.NET Entity framework? Cuz each time I try Get Column Information for the particular SP, it says that The selected stored procedure returns no columns.

Any help would be appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

貪欢 2024-09-23 03:02:52

我团队的一名成员最近遇到了类似的情况,其中存储过程生成各种动态 SQL 并返回计算列,因此数据上下文不知道如何处理它。我自己还没有尝试过,但这是他声称有效的解决方案:

解决方案很简单,只需将行
“立即关闭;”进入程序。
这允许数据上下文
实际上生成返回类。
这在这种情况下有效,只是因为
该过程除了查询什么也没做
数据。

完整详细信息请参见此处:
http://tonesdotnetblog.wordpress.com/2010/06/02/solution-my- generated-linq-to-sql-stored-procedure-returns-an-int-何时应该返回表格/

您只需要在
过程足够长以生成
班级。然后您可以将其注释掉。

A member of my team recently encountered something like this, where a stored procedure was generating all kinds of dynamic SQL and returning calculated columns so the data context didn't know what to make of it. I haven't tried it myself yet, but this was the solution he claimed worked:

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:
http://tonesdotnetblog.wordpress.com/2010/06/02/solution-my-generated-linq-to-sql-stored-procedure-returns-an-int-when-it-should-return-a-table/

You only need the “SET FMTONLY OFF” in
the proc long enough to generate the
class. You can then comment it out.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文