2014-10-23 27 views
24

Visual Studio 2012'de, hedef çerçevenin bulunduğu bir ASP.NET MVC 4 projesi oluşturdum. .NET Framework 4.5.Dosya veya derleme yüklenemedi 'System.Web.Http.WebHost, Sürüm = 4.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'

Could not load file or assembly 'System.Web.Http.WebHost, Version=4.0.0.0, Culture=neutral, 
PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file 
specified. 

Description: An unhandled exception occurred during the execution of the current web request. 
Please review the stack trace for more information about the error and where 
it originated in the code. 

Exception Details: System.IO.FileNotFoundException: Could not load file or 
assembly 'System.Web.Http.WebHost, Version=4.0.0.0, Culture=neutral, 
PublicKeyToken=31bf3856ad364e35' or one of its dependencies. 
The system cannot find the file specified. 

Source Error: 


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.34237 
+0

Web konuşmasını kullandınız mı veya nasıl dağıttınız? – John

+0

@John i yayınladıktan sonra bu dosyaları ana bilgisayara kopyalayın – user1688401

+0

Doğrudan sunucuya yayınlayabiliyor musunuz? Veya web dağıtmak zip ya da bir şey kullanmak? Bu, tüm dosyaların dahil edildiğinden emin olacaktır. Ayrıca MVC'nin sunucuda kurulu olduğundan emin olun. – John

cevap

20

kontrol mevzilenmiş projenin bin klasörü: Bir web sunucusuna projemi konuşlandırılmış zaman aşağıdaki hatayı verdi. System.Web.Http.WebHost.dll dosyasını içermelidir. Bu dll bu klasörde bulunuyorsa, sürümü kontrol edin. 4.0.0.0 değilse, o zaman 4.0.0.0 sürümünü dağıtın veya başka bir sürümü kullanmak için web yapılandırmanızı değiştirmelisiniz (bağımlılıklar nedeniyle gerçekten iyi bir fikir değil)

+1

denedim ama bu hatayı veriyor: http://i.hizliresim.com/R64NGa.png – user1688401

+1

Size denemek için birkaç seçenek söyledim. Hangisini denedin? – IAfanasov

+0

Teşekkürler şimdi çalışıyor ...Bu yanıtı kabul ettim – user1688401

11

Microsoft.AspNet.WebApi paketini yeniden yüklemeyi deneyin. Paket Yöneticisi konsolunu açın ve türü:

Update-Package Microsoft.AspNet.WebApi -reinstall 

Dikkatli olun, bu komut tüm bağımlılıklarını kaldıracak ve bunları manuel olarak yüklemeniz gerekir.

+2

Teşekkürler onun için çalıştı –

+0

Paketleri.config düzenleyin ve tüm webapi referanslarını yorumlayın, daha sonra yüklemeyi yüklemeden önce çalıştırabilirsiniz. –

25

Dağıtım sırasında aynı sorunu yaşadım. Dağıtım dosyasına kopyalanacak montajı işaretleyerek bunu düzeltemedim.

Bunu yapmak için Visual Studio projemde, referanslarınızda System.Web.Http.Webhost derlemesini seçin ve 'Yerel Kopya' özelliğini True olarak değiştirin. Bunu eksik olan birkaç başka meclis için tekrarlamak zorundaydım. ipuçları için bu web sitesine

Teşekkür - http://haacked.com/archive/2008/11/03/bin-deploy-aspnetmvc.aspx/

0

Ben Ajan kurmak, yeni bir takım Şehir kurduktan sonra bu bugün karşılaştım. Yeni ajan MVC 4'ün kurulu bir parçası değildi, belki de sorunun bir parçası. Neyse ki, beni çözüme yönlendiren this article'u buldum. Team City'de, yerel önbelleği kullanmamak için Nuget Geri Yükleme için Oluşturma Adımını yeni güncelledim. önbellek zaten yüklü farklı (MVC) çerçeveler ile inşa koşucular tarafından kurulmuş olabileceği çünkü

enter image description here

Bu çalışır.

4

Bu hatayı, eski bir proje ile geri döndüğüm için biraz uğraştım. Projenin aslında WebApi'yi kullanmadığı ortaya çıkıyor, bu yüzden NuGet'i kullanarak Microsoft.AspNet.WebApi'yi kaldırdım. Bu benim için problemi çözdü.

WebApi'ye gereksinim duyarsam tekrar yüklediğinizde de hatayı düzeltirdim.

0

Bunun yanıtlandığını biliyorum ama bir şey ekleyeceğimi düşündüm.

Her seferinde "yerel kopyala" dosyasını bir dosyada true olarak ayarladığımda hataya neden olur ve başka bir tane alırdım. Bu yüzden tüm dosyaları referans olarak seçtim ve hepsini doğruya ayarladım. Bu benim için sorunu çözdü.

İlgili konular