正如我在标题中所提到的,我有一个巨大的WEBSİTEPROJECT,我想将MVC添加到它。
我已经关注了一些关于它的教程,但所有这些教程都是关于将MVC集成到Web应用程序项目中。
但我没有WEP APPLICATION PROJECT。
我的问题也有办法吗?
答案 0 :(得分:10)
有很多关于如何让MVC与ASP.NET Web应用程序一起工作的博客文章。但是,我们仍然使用普通的ASP.NET网站项目而不是Web应用程序项目。
以下是使用asp.net网站项目启用MVC 3的步骤
<强> 1。安装ASP.NET MVC 3
<强> 2。修改web.config
在Visual Studio中打开web.config并在
部分中添加以下行
第3。修改global.asax
接下来,您需要在global.asax中添加MVC触发器的代码(如果它不存在则创建一个)
在&lt;%@ Application Language =“C#”%&gt;
之后添加以下行
在
之后添加以下内容
在application_start
中添加以下内容
此时,您的global.asax应该看起来像
<强> 4。创建控制器
因为这是一个网站项目,编译是在运行时,所以你必须在App_Code文件夹中创建控制器而不是主站点中的普通Controller文件夹
请注意,您的控制器类需要以Controller关键字结束。在示例中,使用controller =“Home”,控制器的类名必须是HomeController
要添加第一个控制器,请右键单击App_Code文件夹并创建一个文件名为HomeController.cs的新类
将以下代码粘贴到HomeController.cs中(替换所有内容)
<强> 5。测试网站
现在您已生成路由并创建了控制器,请浏览到localhost / home。你应该看到“Hello World”
以上内容摘自 here 。无法直接添加引用,因为链接可能会被破坏。
希望这可以帮到你
答案 1 :(得分:5)
将整个网站转换为Web应用程序(WAP)可能会很痛苦,因此我不建议这样做。您可以尝试@Grievoushead提出的其他建议,即在网站项目中使MVC工作(可以工作),但我会建议另一个。
不要试图“合并”网站和MVC WAP,而是尝试将它们保持分离,但共享同一个文件夹。你可以这样做: - 首先在单独的文件夹中创建MVC项目 - 将所有文件复制到您的网站。您可能需要手动合并像web.config和global.asax这样的coupe文件。 - 然后你想要处理你的MVC代码,你在VS中打开csproj。但是,如果您想处理原始代码,只需将该文件夹作为网站打开。
有点不寻常,但根据具体情况,这可能是一个很好的方法。
答案 2 :(得分:1)
我担心您必须先将网站转换为网络应用程序。有关如何操作的说明,请参阅this link。 这可能需要一些努力,但我认为Web应用程序格式更容易使用,所以它绝对值得付出努力。