【发布时间】:2019-11-10 15:55:14
【问题描述】:
我正在尝试使用存储过程的多个结果,该过程返回 3 个结果集。
- 第一个结果是一个名为“消息”的列。
- 第二个结果集是一个表格
- 第三个结果集是另一个表
我的主要问题是,关于如何从存储过程处理多个结果集的所有其他示例都意味着每个结果集都可以映射到一个实体,而我的第一个结果并非如此。
第一个结果:
Select @Message
从此查询返回的第二个结果集:
Select SecondId, SecondName
From T_Table1
从此查询返回的第三个结果集:
Select ThirdId, ThirdName
From T_Table2
更新 我正在直接更新我的 EDMX,我将包含一个来自 Microsoft 的示例并解释我的问题。
<FunctionImport Name="s_GetAllData">
<ReturnType EntitySet="CustomerNames" Type="Collection(Model.CustomerName)" />
<ReturnType EntitySet="CustomerOrders" Type="Collection(Model.CustomerOrder)" />
<ReturnType EntitySet="CustomerShippings" Type="Collection(Model.CustomerShipping)" />
</FunctionImport>
据此,我需要一个集合类型来引用(这意味着我需要数据库中的一个现有表来反映传入的列)。
您不能将表添加到 EF 模型,除非它具有关键字段,而我的结果中没有。
【问题讨论】:
-
您的第一个结果仍然是一个实体,其中一个属性定义为
public string Message { get; set; } -
@entropic 查看我对帖子的更新。
标签: c# entity-framework