WebForms和ASP.NET MVC共存

时间:2009-11-13 05:33:15

标签: asp.net-mvc webforms namespaces web-config coexistence

我正在尝试按this question创建一个WebForms项目和ASP.NET MVC。我为实现这一目标所做的一件事是我在WebForms web.config中添加了名称空间节点:

<pages styleSheetTheme="Default">
  ...
  <namespaces>
    <add namespace="System.Web.Mvc"/>
    <add namespace="System.Web.Mvc.Ajax"/>
    <add namespace="System.Web.Mvc.Html"/>
    <add namespace="System.Web.Routing"/>
  </namespaces>      
</pages>

但是,当我尝试启动项目时,我收到一条错误消息:“编译器错误消息:CS0234:名称空间'System.Web'中不存在类型或命名空间名称'Mvc'(是你错过了一个装配参考?)

我引用了System.Web.Mvc。有什么问题?

2 个答案:

答案 0 :(得分:8)

在编译部分添加System.Web.Mvc

<compilation debug="true">
    <assemblies>
        <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add assembly="System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add assembly="System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        </assemblies>
</compilation>

答案 1 :(得分:0)

从MVC项目开始,然后开始添加WebForms页面更容易。

对于您的错误,您需要为以下程序集添加引用:

  • System.Web.Mvc
  • System.Web.Routing
  • System.Web.Abstractions

要在web.config中添加更多内容以使MVC正常工作。为了实现这一切,我建议创建一个MVC项目,并合并web.config文件。