3

我正在尝试创建一个新闻网站,该网站显示来自多个新闻网站的内容

作为开始,我正在尝试 Webclient 并在一个简单的 Web 表单上正常工作

但是当到达 MVC 时,我得到:当前上下文中不存在名称“读取”

下面的代码:

public ActionResult News() 
    {
        var read = "";
        var msg = "";
        try
        {
            WebClient myC = new WebClient();
            read = myC.DownloadString("http://localhost:61123/Videos");

        }
        catch (Exception ex)
        {
            msg = ex.Message.ToString();
        }
        return View();
    }

和 News.cshtml 视图:

@ViewBag.Message.msg
@Html.Raw(read)

任何提示..即使我应该尝试其他方法从其他网站获取特定内容?

4

1 回答 1

5

read是控制器操作方法的本地范围。视图对此一无所知。您必须将其显式发送到视图。你可以用 ViewBag 做到这一点。

try
{
    WebClient myC = new WebClient();
    read = myC.DownloadString("http://localhost:61123/Videos");
    ViewBag.Read = read;
}

然后在你看来

@Html.Raw(ViewBag.Read)

您还可以创建一个 Model 类并将视图强类型化到您的模型,甚至是您的 Model 类的实例列表

于 2013-07-22T23:09:29.310 回答