1

老实说,我对 EF 完全陌生,有点迷茫。我有一个现有的数据库,一切都通过存储过程。甚至选择都是存储过程。我的模型需要使用它,但我不知道如何开始。如果对象要基于存储过程输出而不是表,我假设我真的可以使用自动生成。

我试过谷歌搜索,但老实说,我不认为我知道要寻找什么。

如果我创建一个空的实体框架模型,并自己构建所有对象,我可以通过执行存储过程而不是直接映射到表来以某种方式获取数据吗?

我该怎么做?我需要阅读哪些文章?我的搜索似乎总是以花哨的自动生成文章结束,这似乎不适用于我的情况。

我知道这是一个广泛的问题,但我在这里有点迷失了。任何帮助深表感谢。

编辑

因此,我了解到我可以基于存储的选择创建一个复杂类型。但是,我真的没有办法将更新/插入/删除过程映射到此。我真的不明白如何将实体类型和复杂类型链接在一起,如果这是可能的或这样做的方式。

4

2 回答 2

0

您可以使用函数导入来映射存储过程 - 将它们的返回类型声明为您的实体的集合,然后使用ExecuteFunction

例如:

context.ExecuteFunction<YourEntity>("YourSelectStoredProcedure")
于 2012-11-07T08:54:01.800 回答
0
to start with create entity model (.dbmx file) from existing DB, which will include your existing stored procedure from your DB

after which u can go to entity model and check the Tab model browser, under stored procedures u can select the required SP, and also specify the type of data it will return 

check these links 

http://channel9.msdn.com/Blogs/wriju/Using-Stored-Procedure-in-ADONET-Entity-Framework-40

http://msdn.microsoft.com/en-us/data/gg699321.aspx
于 2012-11-07T09:25:01.610 回答