更改主机出厂版本后,在nuget更新后razor 5.x查看intellisense损坏

时间:2015-02-25 10:46:45

标签: c# razor model-view-controller nuget intellisense

我更新了NuGet包" Microsoft ASP.NET MVC"和版本5.0.0.0到版本5.2.2.0的依赖关系

要让所有引用引用正确的assambly,我手动更新了Views / Web.config(如stack overflow和大多数教程中的大多数解决方案中所述)。这导致以下配置:

<configSections>
 <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
   <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
   <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.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=5.2.2.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.Optimization"/>
   <add namespace="System.Web.Routing" />
   <add namespace="System.Text.RegularExpressions"/>
  </namespaces>
 </pages>
</system.web.webPages.razor>

所有内容都会构建,但它会破坏所有.cshtml剃刀页面上的智能:

The name 'model' does not exist in the current context

当我将主机factoryType版本设置为5.0.0.0时,intellisence再次工作。 奇怪的是,这不是一个引用的集会。

我尝试过这些解决方案:

  • 从解决方案中删除obj文件夹,bin文件夹和所有包并重建
  • stack overflow

    修复Copy Local = True<Private>True</Private>
    <Reference Include="System.Web.Mvc, Version=5.2.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>..\packages\Microsoft.AspNet.Mvc.5.2.2\lib\net45\System.Web.Mvc.dll</HintPath>
      <Private>True</Private>
    </Reference>
    
  • 尝试更改<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, ..." ... />

  • 的版本

你知道为什么会出现这个问题,以及intellisense如何使用5.0.0.0版本而该程序集甚至不在packages文件夹中? (我查了一下)

0 个答案:

没有答案