我提前道歉,因为我觉得这个问题的答案就在那里,但我无法正确表达我的查询,所以我没有得到太多回报。
无论如何 - 我有一个项目,除了几个表之外,我主要有一个新的数据架构。我想先使用 EF 代码。所以我的问题是 - 除了我可以定义存储过程来处理已经存在的表的几个类之外,是否可以在项目的大部分内容中首先使用代码?
谢谢
我提前道歉,因为我觉得这个问题的答案就在那里,但我无法正确表达我的查询,所以我没有得到太多回报。
无论如何 - 我有一个项目,除了几个表之外,我主要有一个新的数据架构。我想先使用 EF 代码。所以我的问题是 - 除了我可以定义存储过程来处理已经存在的表的几个类之外,是否可以在项目的大部分内容中首先使用代码?
谢谢
您可以访问实例的ObjectContext
属性DbContext
以执行存储过程,如下所示:
((IObjectContextAdapter)myDbContext).Objectcontext.ExecuteStoreQuery<ResponseType>(
"EXEC MyStoredProc @Value1, @Value2",
new SqlParameter("@Value1", value1),
new SqlParameter("@Value2", value2)
)
但是,即使表存在,您所需要的只是与表匹配的类 - CodeFirst 并不意味着代码必须首先存在。只要您的类与表结构和名称匹配(或者您使用流利的 api 或注释使它们匹配),您就可以了。除非存储过程正在做一些在 EF 中很难做到的特殊事情,否则我会坚持使用 EF。