我正在将一个 asp.net 4 项目迁移到 MVC 3 - 并计划在迁移所有内容后迁移到 MVC4。我关注了这篇文章:
创建了一个区域,添加了 Controllers 和 Views 文件夹,创建了一个控制器
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
}
运行应用程序并检查标准的 Aspx 页面,然后工作正常,然后转到控制器的路径并得到“错误:值不能为空。参数名称:incomingMarkupParser”错误。所以,我然后删除了 return View(); 并将其替换为 return Content("Hello world"); 这完全没有问题。
所以我心想,该区域是否有问题......创建了一个 Controllers and Views 文件夹并再次尝试 - 同样的问题。
System.Web.Razor 是 2.0.0.0 版 System.Web.WebPages 是 1.0.0.0 版(也试过 2 版)
网络配置
<assemblies>
<add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</assemblies>
<namespaces>
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages"/>
</namespaces>
我知道问题与 Razor 有关,但我找不到什么。有没有其他人经历过这种情况,如果有,他们是如何克服的?
提前致谢。