HttpWebRequest可以用来填充模型吗?

时间:2013-04-02 16:57:48

标签: c# asp.net-mvc httpwebrequest

我想知道HttpWebRequest是否可以用来填充MVC模型?我正在尝试构建一个MVC 4应用程序,我从大学课程列表页面获取数据,并在我的视图中以几种不同的方式对其进行按摩。我一直看到的示例都采用了响应流并返回了一个字符串或者没有为MVC格式化(使用console.write)。另外,据我所知,返回的数据不是JSON或XML格式。到目前为止,这是我的控制器...

public ActionResult Index()
{
    string postData = "semester=20143Fall+2013+++++++++++++++++++++++++++++++&courseid=&subject=IT++INFORMATION+TECHNOLOGY&college=&campus=1%2C2%2C3%2C4%2C5%2C6%2C7%2C9%2CA%2CB%2CC%2CI%2CL%2CM%2CN%2CP%2CQ%2CR%2CS%2CT%2CW%2CU%2CV%2CX%2CZ&courselevel=&coursenum=&startTime=0600&endTime=2359&days=ALL&All=All+Sections";
    byte[] dataArray = Encoding.UTF8.GetBytes (postData);
    HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://www3.mnsu.edu/courses/selectform.asp");
    myRequest.Method = "POST";
    myRequest.ContentType = "application/x-www-form-urlencoded";
    myRequest.ContentLength = dataArray.Length;
    using (WebResponse response = myRequest.GetResponse())
    {
        using (var reader = new StreamReader(response.GetResponseStream()))
        {
            //insert into a model? Maybe?
        }
    }
    return View();
}

如果无法使用HttbWebRequest,有没有办法可行?还是我完全朝着错误的方向前进?

1 个答案:

答案 0 :(得分:1)

您可以使用HttpWebRequest和WebResponse从您的大学课程网站获取流。然后使用HtmlAgilityPack解析流中的剪贴簿,并将所需的值插入模型