none
VIEW与Controllers多层文件夹时,Controllers如何定向VIEW RRS feed

  • 问题

  • 例如:项目ProA
    (VIEW) 文件夹 Brand -- 文件夹Sign -- index.cshtml
    (Controllers) 文件Brand -- SignController.cs
    C# code
    routes.MapRoute( "Brand", "Brand/{controller}/{action}/{id}", new { controller = "Brand.Sign", action = "index", id = UrlParameter.Optional } );

    现在请问:在SignController 中的 index中 return View(CustInfo)时, MVC 3 会直接去找 VIEW-文件夹Sign下的index.cshtml,
    直接跳过了文件夹 Brand ,提示错误,如何解决?
    2012年6月5日 1:27

答案

  • 我不是非常建议您在View下面放文件夹。因为那会导致解析错误,你看Views下面的文件夹中有一个web.config,明显禁止直接通过View路径方式访问内容的。

    看你的路径,我建议你创建一个Area,把这个Area名字改为Brand,然后就可以访问了。

    自动生成代码:

    public class BrandAreaRegistration : AreaRegistration
        {
            public override string AreaName
            {
                get
                {
                    return "Brand";
                }
            }
    
            public override void RegisterArea(AreaRegistrationContext context)
            {
                context.MapRoute(
                    "Brand_default",
                    "Brand/{controller}/{action}/{id}",
                    new { action = "Index", id = UrlParameter.Optional }
                );
            }
        }

       QQ我:讨论(Talk)
    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处

    • 已标记为答案 xue125 2012年6月5日 3:41
    2012年6月5日 2:36