2017-08-07 44 views
0

是否可以定义未映射到数据库中的表的实体并使用存储过程返回条目?EF和存储过程来填充实体的条目

我发现我可以使用“忽略”,因此数据库中的表不是为实体创建的,但是如何设置存储过程来为此实体填充数据?

注:我先使用代码。

谢谢。

回答

0

您可以创建一个普通的模型类,它不会被数据库上下文引用。模型类应该包含您将从存储过程返回的属性。然后使用

context.Database.ExecuteSqlCommand("storedProc", params) 
// OR 
context.Database.SqlQuery<YourEntityType>("storedProc",params); 
+0

我能够让他们对这种方式,但我需要的是DbSet被映射到SP,因为我使用的是数据源控件(C1DataSource从ComponentOne的一室公寓)可以绑定DbSets仅在DbContext中定义(乍一看)。 –

+0

好吧,将其添加到上下文中,然后使用忽略。 –

+0

我已经做到了。我需要的是一种方式来说,EF使用存储过程的结果集来获取实体条目,因为它不是一个表,它是一个结果集。我认为没有办法。 –