gpt4 book ai didi

entity-framework - 我看不到带有 POCO 类的 DbContext 中的存储过程

转载 作者:行者123 更新时间:2023-12-01 11:57:56 24 4
gpt4 key购买 nike

为什么我在我的 DbContext 中看不到添加的存储过程? DbContext 由 CTP5 版本引入的模板生成(带有 POCO 类)。

我按照本教程所述添加了存储过程: http://thedatafarm.com/blog/data-access/checking-out-one-of-the-new-stored-procedure-features-in-ef4/

此外,我搜索了该条目是否已添加到我的上下文中,结果如下:

<Function Name="GetClientsForEmailSend" Aggregate="false" BuiltIn="false" NiladicFunction="false" IsComposable="false" ParameterTypeSemantics="AllowImplicitConversion" Schema="dbo" />

<FunctionImport Name="GetClientsForEmailSend" EntitySet="Client" ReturnType="Collection(DBMailMarketingModel.Client)" />

<FunctionImportMapping FunctionImportName="GetClientsForEmailSend" FunctionName="DBMailMarketingModel.Store.GetClientsForEmailSend">

类似的问题是:

Why won't EF4 generate a method to support my Function Import?

但我已经完成了所有建议。

这是存储过程:

ALTER PROCEDURE GetClientsForEmailSend
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT OFF;

-- Insert statements for procedure here
SELECT *
FROM dbo.Client AS c
INNER JOIN Subscription AS i on c.IDClient = i.IDClient
WHERE c.Email is not null and c.Email <> '' and i.Active = 1
END
GO

我错过了什么?

谢谢

最佳答案

DbContext 不支持将存储过程映射到方法。您必须使用 context.Database.SqlCommand(...) 或 context.Database.SqlQuery(...) 直接调用过程

关于entity-framework - 我看不到带有 POCO 类的 DbContext 中的存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5042938/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com