Asp.net mvc 3 网页的功能是什么:在MVC 3 web.config中启用

Asp.net mvc 3 网页的功能是什么:在MVC 3 web.config中启用,asp.net-mvc-3,Asp.net Mvc 3,我刚刚开始了一个新的MVC3项目。谁能告诉我什么 <add key="webpages:Enabled" value="false" /> 在我的web.config文件中是否存在?根据文档,它阻止直接访问.cshtml和.vbhtml文件(例如www.myweb.com/views/home/index.cshtml)网页:使用值false启用,可防止.cshtml或.vbhtml文件夹中的文件无法从web浏览器直接访问。要允许提供剃须刀页面,仅设置。您还需要使用NuGet将

我刚刚开始了一个新的MVC3项目。谁能告诉我什么

<add key="webpages:Enabled" value="false" />


在我的web.config文件中是否存在?

根据文档,它阻止直接访问.cshtml和.vbhtml文件(例如
www.myweb.com/views/home/index.cshtml
网页:使用值
false
启用
,可防止
.cshtml
.vbhtml
文件夹中的文件无法从web浏览器直接访问。

要允许提供剃须刀页面,仅设置
。您还需要使用NuGet将Microsoft.AspNet.WebPages包添加到
packages.config

请注意,如果设置了此选项并尝试浏览.chstml文件,会发生什么情况。您会收到错误“未提供此类型的页面”。在这一页上花费了数小时:/实际上,这会阻止它们被直接访问,无论它们位于应用程序中的何处。在“视图”文件夹中,在根目录中,在其他文件夹中。。。没关系,你也会犯同样的错误
您请求的页面类型未被提供,因为它已被明确禁止
这不是“BlockViewHandler”配置的目的吗?有什么不同?抱歉,在Mono上运行Nancy项目,此设置通过nuget显示。所以我想知道,这是一个IIS的东西,MVC 3的东西,或堆栈的哪个部分实际使用此设置?默认情况下,我不允许查看视图,但如果我添加此设置并将其设置为false,它们现在会被解析并尝试被查看。WebPages:Enabled启用它,无论值是true还是false,默认值为null。我一直在搜索,但找不到解释此问题的引用。我特别想知道的是,完全省略
会产生什么影响。默认值是
true
还是
false
?因此我深入研究了源代码,默认值实际上是
null
——这意味着如果应用程序包含任何
*.cshtml
*.vbhtml
文件,则启用网页。可以通过将此值设置为
true
false
来禁用文件检查。您可以自己查看。根据哪些文档?