2010-10-07 49 views
5

是否有可能建立一个使用ASP.NET MVC的DNN模块?DotNetNuke中的ASP.NET MVC?

诚然,DNN不支持ASP.NET MVC开箱即用的......但因为这两个DNN和MVC在ASP.NET管道上运行...

我之所以问。在DNN运行大型传统网站:

http://blahblahblah.com 

我想坚持现有的ASP.NET MVC的网页/应用在这里:

http://blahblahblah.com/subfolder 

这是更好地在设置虚拟目录等进行服务器,还是有办法将其与DNN整合?

回答

8

DNN相当紧缚Web表单。 ASP.Net MVC将非常困难,或许不可能集成到一个模块中。但是DNN确实支持Web Forms MVP(Model View Presenter),它允许在WebForms上下文中使用MVC的所有结构/测试优势。 DotNetNuke Corp.开发的所有新模块都使用Webforms MVP模式。

这里是一个链接,让你开始Step by Step Webforms MVP and DotNetNuke – Part 1.

+0

谢谢!将检查了这一点。 – 2010-10-08 12:43:21

+0

发布此答案后的一段时间,我尝试了将MVC与DNN集成的秒杀。我的结论是,有可能做一些妥协,但最终不太可能。今天,我倾向于使用服务框架编写服务,并在javascript中完成所有UI,而完全忽略了Web窗体和代码。 – ScottS 2014-06-06 02:58:33

0

如果你只是想要一个单独的MVC应用程序在一个子目录中,你应该能够做到这一点。主要棘手的部分将被整合用户/会话(假设你需要),但不应该是大的一道坎弄清楚(而不是重新编码现有的MVC应用程序)。您可能还需要更新您的MVC应用程序的web.config以清除DNN中的任何内容(最重要的是HTTP模块和处理程序,因此它们不会干扰路由)。