【问题标题】:MVC3 portal handling JSON data from web serviceMVC3 门户处理来自 Web 服务的 JSON 数据
【发布时间】:2012-05-12 07:57:28
【问题描述】:

我必须构建基于 MVC3 ASP.NET 的小型门户,该门户将从其他基于 MVC3 ASP.NET 的 Web 服务接收 JSON 格式的数据。服务将从数据库中获取数据,对其进行序列化,并将其作为 JsonResult 发送。 Portal 需要捕获该数据并将其反序列化回模型并将其扔到适当的视图中。

由于我对此有点陌生,我正在考虑将 WebClient 用于门户网站,但我不知道是否有比这更好的东西?想法是在控制器内处理数据。

另外,我将不胜感激任何示例/教程。

谢谢

【问题讨论】:

    标签: json asp.net-mvc-3 web-services


    【解决方案1】:

    我确实做到了这一点。我使用 HttpWebRequest 和 HttpWebResponse 类创建了一个通用类来使用外部 Web 服务。

    使用 HttpWebRequest 类的理由可能是我相信您在使用 HttpWebRequest 时可以获得更精细的控制,因为 WebClient 类本质上是 HttpWebRequest 的包装器。然后将 Web 服务响应反序列化为 Web Portal 应用程序中的自定义对象。

    我也不会处理控制器中的数据并保持它们更清洁,我将此任务抽象为一个服务类,其中需要对响应进行任何验证/修改。

    【讨论】:

    • 感谢您的提示,猜测 HttpWebRequest/Response 将是要走的路:)
    【解决方案2】:

    我不确定我是否完全理解了您的问题,但如果您询问两个 Web 应用程序之间的正确通信方式,我建议您使用 WCF。在这种情况下,将通过 SOAP 消息而不是 JSON 进行通信。

    但是如果您询问如何将对象序列化为 JSON 格式,那么您可以使用 JSON.NET 库。

    1. Introduction to WCF

    2. JSON.NET

    3. Helpful resource

    【讨论】:

    • 抱歉,我的问题已经很清楚了。我有以 JSON 形式接受请求/发送响应的 Web 服务,因此使用 WCF 和 SOAP 不是我想要的。我知道如何在没有 3rd 方框架的情况下序列化/反序列化 JSON。我正在寻找在 MVC3 控制器中使用该 Web 服务的最佳方法。不过感谢您的努力。
    • @BarisaPuter 我会更新您的问题以反映“我正在寻找合适的方法来使用 Web 服务”。因为我也没有完全理解你的问题。
    猜你喜欢
    • 2011-05-04
    • 2011-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-07
    • 2017-03-20
    • 1970-01-01
    • 2018-07-01
    相关资源
    最近更新 更多