zoukankan      html  css  js  c++  java
  • ASP.NET MVC:在WebForm中使用MVC4.0,并完美结合Razor引擎

    前面已经讲过如何在WebForm中使用MVC4.0,本文主要解决“当前上下文不存在ViewBag”的问题,

    在View视图实际使用过程中,如果引用不正确会提示“当前上下文不存在ViewBag”,首先需要引入“Microsoft.CSharp”类库

    然后修改web.config,主要是添加“configSections”和“system.web.webPages.razor”区段

    <?xml version="1.0"?> 
     
    <configuration> 
      <configSections> 
        <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"> 
          <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> 
          <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> 
        </sectionGroup> 
      </configSections> 
     
      <system.web.webPages.razor> 
        <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
        <pages pageBaseType="System.Web.Mvc.WebViewPage"> 
          <namespaces> 
            <add namespace="System.Web.Mvc" /> 
            <add namespace="System.Web.Mvc.Ajax" /> 
            <add namespace="System.Web.Mvc.Html" /> 
            <add namespace="System.Web.Routing" /> 
          </namespaces> 
        </pages> 
      </system.web.webPages.razor> 
     
      <appSettings> 
        <add key="webpages:Enabled" value="false" /> 
      </appSettings> 
     
      <system.web> 
        <httpHandlers> 
          <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/> 
        </httpHandlers> 
     
        <!-- 
            Enabling request validation in view pages would cause validation to occur 
            after the input has already been processed by the controller. By default 
            MVC performs request validation before a controller processes the input. 
            To change this behavior apply the ValidateInputAttribute to a 
            controller or action. 
        --> 
        <pages 
            validateRequest="false" 
            pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" 
            pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" 
            userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"> 
          <controls> 
            <add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" /> 
          </controls> 
        </pages> 
      </system.web> 
     
      <system.webServer> 
        <validation validateIntegratedModeConfiguration="false" /> 
     
        <handlers> 
          <remove name="BlockViewHandler"/> 
          <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" /> 
        </handlers> 
      </system.webServer> 
    </configuration> 
  • 相关阅读:
    static的全部用法收集整理
    文思创新复试及一些自己的思考
    “一碗牛肉面”引发的管理难题
    信必优面试实录
    我做PM(项目经理)这段时间...
    什么是面向对象?
    沟通
    体会Bind和Eval的不同用法
    北京艾德思奇科技有限公司面试实录
    今天去sony公司面试实录
  • 原文地址:https://www.cnblogs.com/yipu/p/2993159.html
Copyright © 2011-2022 走看看