0

需要一些建议。我已经设置了以下 HttpWebRequest,它转到另一台服务器并以 htnl 格式从那里检索数据 - 但我可以将其更改为另一个结构。

我想做的是从那里对数据进行数据绑定,并在我的网站中使用转发器和列表控件很好地呈现它。

我在下面有大部分代码。我需要问的问题是,我可以按照我设置它的方式对我的 responseData 对象进行数据绑定。其次,我可以配置另一端的页面以生成大多数格式的输出。如果我有客户姓名、联系人、电话、电子邮件,我应该如何明智地呈现结构,以便可以将其用作数据绑定对象?

希望这个问题有意义。一如既往的感谢

    string url = "https://myaddress/customerlist.php";

    // creates the post data for the POST request
    string postData = "ID=" + username + "&Token=" + token;

    // create the POST request
    HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
    webRequest.Method = "POST";
    webRequest.ContentType = "application/x-www-form-urlencoded";
    webRequest.ContentLength = postData.Length;

    // POST the data
    using (StreamWriter requestWriter2 = new StreamWriter(webRequest.GetRequestStream()))
    {
        requestWriter2.Write(postData);
    }

    //  This actually does the request and gets the response back
    HttpWebResponse resp = (HttpWebResponse)webRequest.GetResponse();

    string responseData = string.Empty;

    using (StreamReader responseReader = new StreamReader(webRequest.GetResponse().GetResponseStream()))
    {
        // dumps the HTML from the response into a string variable
        responseData = responseReader.ReadToEnd();
    }

    ReportRepeater.DataSource = responseData;
    ReportRepeater.DataBind();
4

1 回答 1

0

您应该responseData在自定义对象列表中进行转换,以便将其绑定到中继器

IList<Contact> contacts = ParseResponse(responseData);

ReportRepeater.DataSource = contacts;
ReportRepeater.DataBind();

ParseResponse 是这样的自定义方法:

IList<Contact> ParseResponse(string response)
{
   var rtn = new List<Contact>();

   //some loop to create contacts
   //rtn.Add(newContact);

   return rtn;
}

如何使用中继器的一个很好的解释:http: //msdn.microsoft.com/en-us/magazine/cc163780.aspx

于 2013-02-01T14:56:36.737 回答