zoukankan      html  css  js  c++  java
  • [源码学习]Razor在VS调试配置

    1.ASP.NET MVC3源码下载
      Codeplex
      http://aspnet.codeplex.com/releases

    image
     
    2. 创建调试用的project TestMVC3
     
     image

    3.添加ASP.NET MVC3源码中的下面几个project到调试用的solution中

     

    其实刚开始做的时候是先做的第4步,然后通过vs错误提示找到下面这几个project的 
     
    System.Web.Helpers
    System.Web.Mvc
    System.Web.Razor
    System.Web.WebPages
    System.Web.WebPages.Deployment
    System.Web.WebPages.Razor

    image
     
    4.修改TestMVC3 project的引用项为源码中的project
     
    System.Web.Helpers
    System.Web.Mvc
    System.Web.WebPages

    image 

    按照最初的设想到这里应该是已经可以了,但是一运行,不行啊,继续。
     
    5.修改TestMVC3的web.config

    根目录web.config

    <system.web> 下 <compilation>节

    <compilation debug="true" targetFramework="4.0">
          <assemblies>
            <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
            <add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
            <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
            <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" />
            <add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          </assemblies>
        </compilation>
     
    <runtime>节
     
    <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="System.Web.Mvc" publicKeyToken="null" />
            <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" />
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
     
    刚开始以为到这里就可以了,运行发现会抛出assembly不一致的异常。
    通过异常信息看到name为system.web.webPages.razor的section中配置的还是GAC中的assembly。
    直接在project中查找system.web.webPages.razor,找到了Views目录中的web.config(昏头了怎么把它给抛在脑后了?)。
    找到了就好办多了,看了看都是下载的源码中的project,直接把PublicKeyToken都改成null就ok了
     
     
    F5,OK,熟悉的画面出来了吧
    image
     
    还有异常?是的,The controller for path '/favicon.ico' was not found or does not implement IController.
    这个都知道怎么解决吧,或者说可以忽略了。
     
     
  • 相关阅读:
    2017-2018 ACM-ICPC, NEERC, Northern Subregional Contest C
    Codeforces Round #445 div.2 D. Restoration of string 乱搞
    hdu 6228 Tree
    数塔(入门级dp)
    逆序数(归并排序和树状数组)
    poj2104 K-th Number 主席树入门;
    Codeforces Round #466 (Div. 2)F. Machine Learning 离散化+带修改的莫队
    Codeforces Round #470 (rated, Div. 2, based on VK Cup 2018 Round 1)C. Producing Snow+差分标记
    2038: [2009国家集训队]小Z的袜子(hose)+莫队入门
    Codeforces Round #220 (Div. 2)D. Inna and Sequence 树状数组+二分
  • 原文地址:https://www.cnblogs.com/llcto/p/2485983.html
Copyright © 2011-2022 走看看