2013-07-17 54 views
0

我們的主網站是ASP.net 4.5並使用Ektron(A .net CMS)我試圖將它變成一個MVC4/Webforms混合體。
至於我可以告訴我正確安裝一切MVC4需求,但是當我嘗試打默認主頁控制器我得到的經典在MVC4/ASP.net中查看4.5混合應用程序

[InvalidOperationException: The view 'Index' or its master was not found or no view engine supports the searched locations. The following locations were searched: 
~/Views/home/Index.aspx 
~/Views/home/Index.ascx 
~/Views/Shared/Index.aspx 
~/Views/Shared/Index.ascx 
~/Views/home/Index.cshtml 
~/Views/home/Index.vbhtml 
~/Views/Shared/Index.cshtml 
~/Views/Shared/Index.vbhtml] 

我安裝使用的NuGet MVC4並通過複製在默認的控制器,視圖以及來自默認MVC4應用程序的App_Start和Global.asax文件。我也安裝了WebAPI,它工作正常(這樣告訴我路由似乎工作正常,即我可以去API /值,並獲得默認值的API數據回來就好了)。

該網站安裝爲主網站,即不作爲子網站或子應用程序。

我最初以爲Ektron(我們的CMS)有一大堆處理程序,但它已經破壞了web.config,並且在那裏找不到任何問題,所以我最初認爲處理程序部分可能存在問題。我甚至嘗試用默認的MVC4應用程序替換它,並得到相同的錯誤。 請注意,我確實必須更改默認web.config中的一個部分,並在我自定義的部分中。
當我在那裏有本節:

 <dependentAssembly> 
    <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> 
    <bindingRedirect oldVersion="0.0.0.0-2.1.10.0" newVersion="2.1.10.0" /> 
    </dependentAssembly> 

我得到的錯誤

Could not load file or assembly 'System.Net.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 

我看着裝配細節爲DLL並發現這是4.0.0.0版本,所以我改變了部分說

 <dependentAssembly> 
    <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> 
    <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" /> 
    </dependentAssembly> 

它修正該錯誤而據我可以告訴是確定的,但再一次,我留下了不被人發現的意見,上述問題。

任何幫助將不勝感激。

+0

什麼是您的觀點的實際路徑? – SLaks

回答

0

好吧,我覺得啞巴。

@SLaks簡單的問題幫助我找到答案。

我們有一個相當複雜的構建系統。它將Ektron基本代碼項目(這是一個不是項目的網站)與我們的主項目和類庫合併到輸出目錄中,在這種情況下/ debug是我的IIS指向的位置。涉及到幾個步驟,包括在「構建」期間將我們的Web項目轉換回網站(不要問,這是一個痛苦,但加速構建時間一噸)。 無論如何,我們只複製某些文件類型,並且.cshtml不在列表中,所以是的,在輸出調試目錄中沒有視圖文件夾。 。 。