什么是Web.config中的Razor Host Section和Razor Pages部分

时间:2014-03-11 13:59:04

标签: asp.net asp.net-mvc razor azure asp.net-web-api

当有人重新学习.net + Web API 2时,我不确定我的Web.config文件中的这些条目是什么。应该requirePermission设置为true吗?有没有关于此的教程。 (我目前正在拼凑整个.net + webapi + azure模拟器+部署到云端的过程。)

 <configuration>
  <configSections>
    <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.1.1.0, Culture=neutral, PublicKeyToken=XXXXXXXXX">
      <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=XXXXXXXXXX" requirePermission="false" />
      <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=XXXXXXXXXX" requirePermission="false" />
    </sectionGroup>
  </configSections>

1 个答案:

答案 0 :(得分:2)

什么是&lt; configSections&gt;?

<configSections> element定义您稍后将填写的配置元素。例如,这一行:

<section
   name="pages"
   type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, ..."
   requirePermission="false"
/>

...表示在配置文件中进一步向下,您可以定义由RazorPagesSection内部处理的<pages>部分。 requirePermission属性为related to trust-level security,除非您的应用在部分信任方案中运行(例如在传统的共享主机上),否则您无需担心此问题。

这是样板配置 - 它是自动配置的,除非出现问题,否则通常不需要更改它。

什么是Razor,&lt; pages&gt;和&lt; host&gt;?

这些部分配置Razor, which is the new syntax used in ASP.NET MVC views。你开始时默认值很好。

<pages> element配置您的MVC观看次数 - 您可以配置which namespaces are referenced by defaultadd or override the helper methods available in your views

<host> element配置您的应用程序的服务方式。唯一的属性是factoryType我认为告诉服务器如何构建您的视图。你永远不需要改变它,除非你做的事特别花哨。