【问题标题】:How can I pass a variable from a ASP website to a desktop application?如何将变量从 ASP 网站传递到桌面应用程序?
【发布时间】:2012-07-21 17:16:40
【问题描述】:

我正在尝试将一个变量从一个 asp 项目(用 c# 编写)传递到一个桌面 c# 应用程序。我知道使用 Javascript 你可以使用JavaScriptSerializer,但是有没有等价于 asp 的?

【问题讨论】:

  • 传输协议是什么?
  • @Wiktor 我对此很陌生......你是什么意思
  • 这听起来像是网络服务的工作......

标签: c# asp.net variables serialization


【解决方案1】:

取决于您想要发回应用程序的内容或服务器已经发回的内容。即,假设网页请求的结果是您所说的“参数”(在 http 和 Web 通信的上下文中,您不太清楚)。 ASP 页面可以将数据传回给请求数据的应用,如下所示:

WebClient webClient = new WebClient();
var text = webClient.DownloadString("http://www.example.com/page.aspx");

...请记住,这是应用程序中的代码。我想这就是你要问的;因为实际上只有一种方法可以从 ASP 应用程序中获取数据。

如果这不是您真正要问的,请更详细。

【讨论】:

    【解决方案2】:

    但是asp有没有等价物?

    如果您指的是 ASP.NET WebForms(值得具体说明):您的选项包括:

    • 使用 MVC4 并使用 ApiController 创建一个 RESTful API 端点。
    • 使用 MVC 并创建一个控制器,根据接受标头返回 HTML/XML/JSON)
    • 添加映射到特定文件扩展名的 IHTTPHandler 以返回数据。 (这可以使用接受头来返回不同的格式)。
    • 添加 WCF 端点。

    我倾向于选择第一个(允许我通过一个简单的示例来学习 ApiController),但第二个和第三个都足够简单。

    最后一个选项为您提供了最大的灵活性,尤其是在您需要 SOAP/WS-* 样式的情况下),但学习曲线也最长。

    对于前三个,客户端是WebClient(或者可能是HttpWebRequest),具有已知(或动态确定的)URL。在后一种情况下是 WCF。

    注意。单个 Web 应用程序(在 IIS 术语中)可以包含 WebForms 和 MVC 的混合。

    【讨论】:

    • 所以我使用HttpWebRequest 从服务器获取信息,然后创建一个API 来存储它?
    • @OutlawLemur 对不起,我不关注。在这种情况下,“Web API”是 URL 上的资源,它返回数据以供其他已经在网页中运行的代码(通常)读取,而不是 HTML 来创建页面。 IE。使用HttpWebRequest调用API。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-18
    • 1970-01-01
    • 2013-03-01
    • 1970-01-01
    • 2021-04-10
    相关资源
    最近更新 更多