Sorun
Microsoft ASP.NET Web API OData paketi 5.0.0-rc1 ön sürümünü yükledikten sonra aşağıdaki özel durumla karşılaşıyorum:
Dosya veya derleme 'System.Web.Http, Version = 4.0.0.0, Culture = nötr, PublicKeyToken = 31bf3856ad364e35' veya bağımlılıklarından biri yüklenemedi. Bulunan derlemenin bildirim tanımı, derleme başvurusuyla eşleşmiyor. (HRESULT istisnası: 0x80131040)
MVC 4 projem yepyeni ve gerçekten küçük, içinde hiçbir şey fantezi değil. .NET framework 4.5'i hedefliyorum
PATCH'i Delta sınıfını kullanarak uygulamak için bu nuget paketine ihtiyacım var (Paketin 4.0.0.0 sürümünü kullandığımda, Delta sınıfı çalışmıyor).
Bunu nasıl düzeltebilirim?
System.Web.Http sürümlerim
In GAC ben sürümüne sahip 5.0.0.0 System.Web.Http arasında
gacutil -l System.Web.Http Genel Birleştirme Önbelleği aşağıdaki derlemeleri içerir: System.Web.Http, Sürüm = 5.0.0.0, Culture = nötr, PublicKeyToken = 31bf3856ad364e35, processorArchitecture = MSIL
Gelen Visual Studio , ben meclisleri gezinirken, System.Web.Http verili sürümüdür 4.0.0.0 (Neden?)
In projemde , System.Web.Http referans
- 5.0.0.0 sürümüne sahiptir
- Paketin \ lib \ net45 \ klasörüne işaret eder
- CopyLocal = true vardır
Denediğim şeyler
Web.config içinde yeniden yönlendirme v 4.0.0.0'ı 5.0.0.0'a bağlamayı denedim
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="4.0.0.0-4.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
Ama bana başka bir istisna veriyor:
'System.Web.Http.GlobalConfiguration.CS $ <> 9__CachedAnonymousMethodDelegate2' alanına erişmek için 'System.Web.Http.GlobalConfiguration..cctor ()' yöntemiyle girişimi başarısız oldu.
Sanırım v 4.0.0.0'ın gerçekten çekirdek Web Api motoru tarafından kullanılması gerekiyor.
Bağlantılı sorular
Kod Analizi hatası Dosya veya derleme yüklenemedi 'System.Net.Http, Sürüm = 2.0.0.0 MVC4 Web API'sinde Dosya veya derleme yüklenemedi' System.Net.Http, Sürüm = 2.0.0.0 MVC4 Web API'de