1

こんにちは、データベースから値を読み取ってXMLに変換するaspxページを呼び出す必要があるWindowsアプリケーションに取り組んでいます。aspxページを呼び出して、呼び出し元のWindowsアプリケーションに値を返す方法がわかりません。 Webリクエストメソッドを使用してみましたが、何も返されません。これを行う方法を教えてください。

4

1 に答える 1

1

次のようなWebClientを使用できます。

これは、XMLファイルのリクエストをインターセプトするHttpModuleによって生成されたサイトマップXMLです。

  WebClient wc = new WebClient();
  string smap = wc.DownloadString("http://www.antoniob.com/sitemap.xml");

そしてこれはXMLを返す理論上のaspxです

  WebClient wc = new WebClient();
  string smap = wc.DownloadString("http://www.somesite.com/GetXml.ashx");

もちろん住所を除いて、通話に違いはありません

サーバー側(asp.netアプリ)では、XMLを返すのに適しているため、ASHXハンドラーを使用することをお勧めします。ASP.NETアプリケーションで新しいアイテムを追加し、汎用ハンドラーを選択します。

ここに画像の説明を入力してください

App_DataフォルダーからサンプルXMLを返すGetXml.ashxハンドラーのコードは次のとおりです。

  public class GetXml : IHttpHandler
  {    
    public void ProcessRequest(HttpContext context)
    {
      context.Response.ContentType = "text/xml";
      string xml = File.ReadAllText(context.Server.MapPath("~/App_Data/sample.xml"));
      context.Response.Write(xml);
      context.Response.End();    
    }

    public bool IsReusable
    {
      get
      {
        return false;
      }
    }
  }
于 2012-04-25T12:30:47.670 に答える