Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 4 使用存储过程时在mvc4模型中返回多个记录集_Asp.net Mvc 4 - Fatal编程技术网

Asp.net mvc 4 使用存储过程时在mvc4模型中返回多个记录集

Asp.net mvc 4 使用存储过程时在mvc4模型中返回多个记录集,asp.net-mvc-4,Asp.net Mvc 4,我正在学习MVC4 我的问题是。当从存储过程查询数据时,MVC模型是否可以提供多个记录集 因此,让我添加一些上下文。在我的数据库中,我有两个表和一个存储过程,定义如下: CREATE TABLE [dbo].[RnDParent]( [ParentID] [int] IDENTITY(1,1) NOT NULL, [Name] [varchar](50) NOT NULL, CONSTRAINT [PK_RnDParent] PRIMARY KEY CLUSTERED ( [ParentID]

我正在学习MVC4

我的问题是。当从存储过程查询数据时,MVC模型是否可以提供多个记录集

因此,让我添加一些上下文。在我的数据库中,我有两个表和一个存储过程,定义如下:

CREATE TABLE [dbo].[RnDParent](
[ParentID] [int] IDENTITY(1,1) NOT NULL,
[Name] [varchar](50) NOT NULL,
CONSTRAINT [PK_RnDParent] PRIMARY KEY CLUSTERED 
(
[ParentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

CREATE TABLE [dbo].[RnDChild](
[ChildID] [int] IDENTITY(1,1) NOT NULL,
[ParentID] [int] NOT NULL,
[Label] [varchar](50) NOT NULL,
[Value] [money] NOT NULL,
CONSTRAINT [PK_RnDChild] PRIMARY KEY CLUSTERED 
(
[ChildID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

CREATE PROCEDURE Proc_RnDProcedure_GetParentByID 
@ParentID int
AS
BEGIN

SELECT [ParentID]
,[Name]
FROM [PriceCal3].[dbo].[RnDParent]
WHERE [ParentID] = @ParentID

SELECT [ChildID]
,[ParentID]
,[Label]
,[Value]
FROM [PriceCal3].[dbo].[RnDChild]
WHERE [ParentID] = @ParentID

END
GO
然后,我创建了一个MVC4项目,并使用ADO.Net实体数据模型控件创建模型,选择存储过程Proc_RnDProcedure_GetParentByID作为我要使用的对象

连接字符串的multipleactiveresultsets键设置为True

当我查看存储过程模型的代码时,它的定义如下

namespace RnDMVC4Project.Models
{
using System;

public partial class Proc_RnDProcedure_GetParentByID_Result
{
public int ParentID { get; set; }
public string Name { get; set; }
}
}
子表中的结果没有对记录集的引用

由于该类是自动生成的,是否可以包含子表中的记录?如果是的话,我少了哪一块拼图


提前感谢您的帮助。

如果您只有一个对象,您可以这样做吗

SELECT c.[ChildID]
,c.[ParentID]
,c.[Label]
,c.[Value]
,p.[Name]
FROM [PriceCal3].[dbo].[RnDChild] as c
INNER JOIN [PriceCal3].[dbo].[RnDParent] ON c.[ParentID] = p.[ParentID]
WHERE c.[ParentID] = @ParentID

因为只有一个物体,你能做到吗

SELECT c.[ChildID]
,c.[ParentID]
,c.[Label]
,c.[Value]
,p.[Name]
FROM [PriceCal3].[dbo].[RnDChild] as c
INNER JOIN [PriceCal3].[dbo].[RnDParent] ON c.[ParentID] = p.[ParentID]
WHERE c.[ParentID] = @ParentID