在ASP.NET Web Helpers Library中使用Video对象时,如何解决CS0103编译错误?

时间:2014-02-09 16:37:19

标签: webmatrix asp.net-webpages webmatrix-2

我开始使用Microsoft WebMatrix 3学习Web开发。我正在使用针对早期版本的书Introducing Microsoft WebMatrix,但很多东西是相同的。我尝试使用Microsoft ASP.NET Web Helpers Library时遇到编译错误,但我不知道为什么或如何解决问题。具体来说,我在尝试使用Video对象或LinkShare对象时遇到编译器错误CS0103。我已经在互联网上搜索了几天,我找不到任何有同样问题的人并解决了它。

重现错误的步骤

  1. 运行WebMatrix 3.
  2. 在“快速入门”页面上,单击“新建”,然后单击“模板库”。
  3. 选择“空站点”,然后单击“下一步”。创建了一个名为“空站点”的新站点。
  4. 打开Default.cshtml页面进行编辑。
  5. 根据教程Displaying Video in an ASP.NET Web Pages (Razor) Site,将以下内容添加到页面正文中:
    @Video.MediaPlayer(path: "myvideo.wmv",
                       width: "400",
                       height: "600",
                       autoStart: true,
                       playCount: 2,
                       uiMode:  "full",
                       stretchToFit: true,
                       enableContextMenu: true,
                       mute: false,
                       volume: 75)
  6. 运行该网站。浏览器中出现一个错误页面,其中包含以下语句:
    “编译器错误消息:CS0103:当前上下文中不存在名称'Video'”
    很公平。我将使用NuGet获取Microsoft Web Helper Library。
  7. 返回WebMatrix窗口,单击NuGet。
  8. 选择WebMatrix包源 出现以下错误消息:
    'Microsoft.AspNet.WebPages'的架构版本与NuGet的2.5.40416.9020版本不兼容。请从http://go.microsoft.com/fwlink/?LinkId=213942将NuGet升级到最新版本。
    单击“确定”忽略该错误并继续。我尝试访问该网站并遵循说明,但我已经拥有最新版本的NuGet for WebMatrix。
  9. 在搜索框中输入Web Helpers,然后按Enter键。
  10. 选择“ASP.NET Web Helpers Library”,然后单击“安装”。确认安装并接受EULA。 出现与“Microsoft.AspNet.WebPages”的架构版本相同的错误。单击“确定”忽略该错误。
  11. 单击“关闭”退出NuGet Gallery,然后单击“确定”关闭所有剩余的错误窗口。
  12. 运行该网站。出现与之前相同的错误消息。
  13. 这演示了Video对象的错误,当我尝试使用LinkShare对象时,我也收到了同样的错误。

    环境信息

    • 操作系统:带有Media Center版本6.3(Build 9600)的Windows 8.1 Pro
    • 浏览器:Internet Explorer 11.0.9600.16476;更新版本:11.0.2(KB2898785)
    • WebMatrix版本3.0版本信息:
      • WebMatrix:7.1.1932.0
      • IIS Express:8.0.8418.0
      • .NET Framework:4.0.30319.34003内容:FX45W81RTMGDR
      • Web部署:7.1.1762.0
      • Web平台安装程序:7.1.40719.0
      • ASP.NET网页:2.0.20715.0

    项目信息

    以下包显示在空站点→App_Data→包:

    • Microsoft.AspNet.Razor.2.0.20715.0
    • Microsoft.AspNet.WebPages.2.0.20710.0
    • Microsoft.AspNet.WebPages.Data.2.0.20710.0
    • Microsoft.AspNet.WebPages.WebData.2.0.20710.0
    • Microsoft.Web.Infrastructure.1.0.0.0
    • 微软网络助手2.1.1.20710.2←由NuGet添加

    以下DLL显示在空站点→bin:

    • 由NuGet
    • 添加的Microsoft.Web.Helpers.dll←
    • Microsoft.Web.Infrastructure.dll
    • System.Web.Helpers.dll
    • System.Web.Razor.dll
    • System.Web.WebPages.Deployment.dll
    • System.Web.WebPages.dll
    • System.Web.WebPages.Razor.dll
    • WebMatrix.Data.dll
    • WebMatrix.WebData.dll

    摘要

    尝试使用ASP.NET Web Helpers库中的Video对象或LinkShare对象时,我收到CS0103编译器错误。很明显,编译器没有找到我试图使用的对象的定义,但我不知道为什么,作为WebMatrix初学者,我不知道如何找出原因。在Visual Studio中,此错误表示我可能缺少项目中的引用,但WebMatrix中的项目中似乎存在所有内容,并且错误页面上显示的命令行似乎没有任何内容。

0 个答案:

没有答案