2012-03-27 35 views
1

我一直在嘗試MVC 4最近。從開發人員預覽開始,現在是測試版。DisplayMode/DiplayMode Providers Issue Asp.Net MVC 4

一切都工作得很好,但我想利用內置縮小&壓縮功能。但它似乎並不存在於開發人員預覽中,因爲無論我嘗試的代碼是否不會編譯/提供乾淨的運行,如果我添加了與捆綁相關的任何內容。然後我做了一些研究,看到了MVC 4 beta。

我卸載了mvc 4並使用beta安裝程序重新安裝了它。創建了一個新項目,並使用捆綁運行良好。但無論我做什麼,(包括複製DLL的來自新的解決方案,我的舊的。)我不能得到捆綁在我現有的解決方案的工作

在文件的global.asax.cs

[1]

BundleTable .Bundles.RegisterTemplateBundles();

捆綁表不會登錄。 (得到紅色下劃線)

[2]

我想別的,只是爲了驗證正在使用新的DLL。

先前檢查顯示模式下面將用於

[a] 
    DisplayModes.Modes.Insert(0, new DefaultDisplayMode("iPhone") 
    { 
     ContextCondition = (context => context.Request.UserAgent.IndexOf 
         ("iPhone", StringComparison.OrdinalIgnoreCase) >= 0) 
    }); 

但它既然已經更新到

[b] 
    DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("iPhone") 
    ... 

的代碼編譯,如果我用[A],而不是[ b],但它不會給我一個乾淨的運行使用[a],因爲它在運行時出錯

無法從程序集'系統加載類型'System.Web.WebPages.DisplayModes'系統.Web.WebPages,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'。

難道是我的舊解決方案還是以某種方式引用舊的dll,即使我複製新的,刪除了引用並手動指向新的引用?


由@Brad克里斯蒂要求的參考條目

<Reference Include="EntityFramework"> 
    <HintPath>..\packages\EntityFramework.4.1.10331.0\lib\net40\EntityFramework.dll</HintPath> 
</Reference> 
<Reference Include="Microsoft.CSharp" /> 
<Reference Include="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath> 
</Reference> 
<Reference Include="System.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\System.Json.4.0.20126.16343\lib\net40\System.Json.dll</HintPath> 
</Reference> 
<Reference Include="System.Net.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\System.Net.Http.2.0.20126.16343\lib\net40\System.Net.Http.dll</HintPath> 
</Reference> 
<Reference Include="System.Net.Http.Formatting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\System.Net.Http.Formatting.4.0.20126.16343\lib\net40\System.Net.Http.Formatting.dll</HintPath> 
</Reference> 
<Reference Include="System.Net.Http.WebRequest, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\System.Net.Http.2.0.20126.16343\lib\net40\System.Net.Http.WebRequest.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.Helpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\AspNetWebPages.Core.2.0.20126.16343\lib\net40\System.Web.Helpers.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\AspNetWebApi.Core.4.0.20126.16343\lib\net40\System.Web.Http.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.Http.Common, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\System.Web.Http.Common.4.0.20126.16343\lib\net40\System.Web.Http.Common.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.Http.WebHost, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\AspNetWebApi.4.0.20126.16343\lib\net40\System.Web.Http.WebHost.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\AspNetMvc.4.0.20126.16343\lib\net40\System.Web.Mvc.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.Optimization"> 
    <HintPath>..\packages\Microsoft.Web.Optimization.1.0.0-beta\lib\net40\System.Web.Optimization.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\AspNetRazor.Core.2.0.20126.16343\lib\net40\System.Web.Razor.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\AspNetWebPages.Core.2.0.20126.16343\lib\net40\System.Web.WebPages.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.WebPages.Deployment, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\AspNetWebPages.Core.2.0.20126.16343\lib\net40\System.Web.WebPages.Deployment.dll</HintPath> 
</Reference> 
<Reference Include="System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\AspNetWebPages.Core.2.0.20126.16343\lib\net40\System.Web.WebPages.Razor.dll</HintPath> 
</Reference> 

回答

1

不是問題的答案我所期待的,但它得到了這份工作完成。我最終創建了一個新的解決方案,並將我的代碼移動到它。似乎要做的伎倆。不知道爲什麼以前的解決方案沒有正確更新,但:/

嘗試去你的解決方案資源管理器,並右鍵點擊根解決方案,並檢查屬性。在通用屬性 - >項目依賴項下,確保檢查相關項目。

+0

我仍然有這個問題。你從未發現這個問題?你可以轉儲項目的''條目嗎? – 2012-04-03 20:24:36

+0

非常感謝,謝謝! – 2012-04-04 12:37:56

2

我說這個我的課,並得到它的工作:

using System.Web.WebPages; 
0

我得到了同樣的問題,並花了1天到解決這個問題。 我檢查了一切(裝配參考/更換裝配)。

終於卸載asp .net網頁並重新安裝它,並工作。

希望這會有所幫助