相关疑难解决方法(0)

为什么MVC视图需要存在于View目录中才能工作?

我一直在编写一个cms,MVC被用作生成页面的主要引擎.

我顺利,但希望能够为每个站点创建一个独特的剃刀模板,如果需要,可能每个视图.

我的规则是每个项目都必须有一个与url链接的唯一代码.

每个项目站点的资产以​​该位置与项目相关的方式存储.

因此,与项目C0001相关联的资产将存储在assets\C0001\C0002 中并为其存储:assets\C0002\依此类推.

为了保持整洁,我想做的是将剃须刀模板与位于该assets\[ProjectCode]位置的项目相关联,但问题是我收到了错误ViewBag not existing in context.

所以这不起作用:

Layout = string.Concat("~/assets/",ViewBag.ProjectNumber,"/_Layout.cshtml");
Run Code Online (Sandbox Code Playgroud)

以下内容将呈现页面:

Layout = string.Concat("~/Views/Shared/_",ViewBag.ProjectNumber,"Layout.cshtml");
Run Code Online (Sandbox Code Playgroud)

我猜第一个布局没有呈现,因为它在已知的搜索区域之外?但是当我告诉它文件的位置时,我不知道问题是什么?

我很高兴使用示例2中的代码,但可能意味着在相当多的项目站点之后,共享视图指令将变得非常繁忙.

只是想知道目录中是否需要存在Views Views

razor viewbag asp.net-mvc-3

4
推荐指数
1
解决办法
1258
查看次数

标签 统计

asp.net-mvc-3 ×1

razor ×1

viewbag ×1