Sitecore多站点MVC解决方案

用户名

我是Sitecore MVC的新手,当前使用Web表单将所有站点组织在以下位置:

\Website\Sites\Site1\css|js|Layouts|Sublayouts|etc.
\Website\Sites\Site{n}\css|js|Layouts|Sublayouts|etc.

我可以将MVC网站添加到我的解决方案中,并且可以与Web表单网站一起正常工作;但是,添加第二个碰巧具有相同控制器/视图名称的MVC站点会产生冲突。

例如,如果我为Site1创建一个控制器

Controllers/Site1/FooController (has index and hello)

然后的视图是:

Views/Foo/Index
Views/Foo/Hello

但是,如果Site2也有一个同名的控制器,那就是冲突了:

Controllers/Site2/FooController (has index and hello)

然后的视图是:

Views/Foo/Index
Views/Foo/Hello

但是它们被Site1使用。

问题是如何设置两个(或多个)碰巧具有相同控制器/视图名称的MVC站点。是否有建议的方法来构造解决方案中的站点,还是必须重写管道/处理器?

谢谢

更新:

谢谢大家。Areas解决了我的问题,但引入了两个新问题:

  1. 通过将名称空间,类和dll名称放在Sitecore的控制器名称中来解决的控制器名称冲突-参考:http : //blog.xcentium.com/2014/03/sitecore-mvc-and-duplicate-controller-名称/

  2. 当控制器返回一个视图时,我必须放置视图的完整路径。否则,在找不到视图的地方会出现错误。例如:return View(“〜/ Areas / Site1 / Views / Home / Index.cshtml”);

我正在研究Sitecore论坛的开发人员提供的修复程序:http : //www.chrisvandesteeg.nl/2014/06/13/sitecore-mvc-in-a-multisite-environment-areas/

我会尝试一下并向您报告。

Dheeraj帕拉吉里

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章