gpt4 book ai didi

c# - EntityFramework 与 WCF - 如何返回 EF 实体

转载 作者:太空宇宙 更新时间:2023-11-03 19:18:06 24 4
gpt4 key购买 nike

我有一个可用的 WCF 服务,但它使用标准 ADO.net 来调用一些存储过程。

维护起来有点困惑和烦人,因为我调用的任何存储过程都必须映射到我必须手动创建的 DataContracts,然后以 JSON 形式返回。

我想将 WCF 服务转换为返回 EntityFramework 实体(因此我不必继续手动映射和创建数据契约(Contract))。

我的方法中有这样的东西,例如:

public List<GetStuff_Result> GetStuff(string param1)
{
...

StuffEntities ctx = new DataContracts.StuffEntities();

List<GetStuff_Result> list = ctx.GetStuff(5463, "test").ToList();

return list;
}

我已经在 edmx 模型中设置了存储过程以返回 GetStuff_Result(我导入了存储过程并使用了“创建复杂函数”)

我已经对此进行了调试,并且在列表中得到了 2 个结果,但是当通过浏览器调用我的 WCF 方法时,我在浏览器 (chrome) 上收到一条消息:

No data received
Unable to load the web page because the server sent no data.
Here are some suggestions:
Reload this web page later.
Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection without sending any data.

谁能告诉我如何解决这个问题,或者至少告诉我为什么会这样?

注意 (1):我还右键单击了 edmx 文件并禁用了延迟加载。

注意 (2): 我已经设置了一个 DbContext 生成器

注意(3):我使用的响应格式是WebMessageFormat.Json

谢谢

最佳答案

这个问题实际上很适合 WCF 数据服务(与 WCF SOAP 无关)。

http://msdn.microsoft.com/en-us/library/dd744841.aspx

默认情况下,WCF 数据服务将返回 XML 格式的数据,但是有一个请求参数告诉它返回 JSON

http://blogs.msdn.com/b/writingdata_services/archive/2011/02/25/getting-json-out-of-wcf-data-services.aspx

关于c# - EntityFramework 与 WCF - 如何返回 EF 实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14595544/

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