Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly hatasını giderme

Yönettiğim Windows Server 2008 R2 web sunuculardan birinde .NET Framework 4 kurduktan sonra .NET Framework 3.5.1 WCF servislerini aktif etmem gerekti. .NET 3.5.1 WCF servisini aktif ettiğimde .NET 4 framework'ünde çalışan sitelerde aşağıdaki gibi bir hata mesajı aldım.

Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'. 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.TypeLoadException: Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.

Service Model Activation hatası

Not : Benzer durum aynı şekilde Windows 7 üzerinde de yaşanabilmekte. Buradaki çözümleri Windows 7 üzerinde de uygulayabilirsiniz.

Yaptığım araştırmalar sonucu .NET 4 kurulduktan sonra .NET 3.5 WCF servisleri ile ilgili bir değişiklik yapıldığında .NET 4'ün çalışmasında sorun olabildiği bilgisine ulaştım. Sorunu çözebilmek için komut satırından aşağıdaki komutları çalıştırmak gerekiyor :

32-bit uygulamalar için (İşletim sistemi 64-bit olsa da çalıştırmak gerekiyor) :

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -iru

64-bit uygulamalar için (Sadece 64-bit işletim sistemlerinde çalıştırmak gerekiyor) :

%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis -iru

Komutları çalıştırdığımızda herhangi bir hata olmaz ise karşılaşacağımız ekran görüntüsü aşağıdaki gibi olacaktır :

Kurulum komut satırı

İşlemleri tamamladıktan sonra artık .NET 4 ile yazılmış olan site problemsiz olarak çalışmaya devam ediyordu.

Comments

Comments (9) -

Ömer ÖNAL
Teşekkür ederim. çok işime yaradı gerçektende. çok yorulmuştum ama çözümü sizde buldum. çok saolun.
Muammer Benzeş
@Ömer Önal : Rica ederim, işinize yaramış olmasına sevindim. İyi çalışmalar
altug
merhaba,
ben silverlight ve wcf kullanarak bir site geliştiriyorum.
ilk başta iis üzerinde wcf çalıştırmak için sizin şu yazınızdaki adımları (http://www.muammerbenzes.com/post/IIS-7de-WCF-uygulamasi-yayinlama.aspx) uyguladım.
daha sonra da bu başlıktaki hatayı da aldım Smile ve onu da uyguladım.
fakat şu an tekrar en başa döndümFrown günlerdir iis üzerinde silverlight ile wcf'i çalıştıramadım...
the remote server not found diyor Frown
başka bir öneriniz var mı? server 2008r2 kullanıyorum.
iyi çalışmalar!
MuammerBenzes
@Altuğ : Karşılaştığınız problem ile ilgili biraz daha ayrıntı verme şansınız var mı?
altug
@MuammerBenzes : biraz geç oldu ama cevap vermek istiyorum. bu problemle karşılaşanlar için bir yol olabilir. benim gibi uğraşmasınlar Smile
tek sorunum windows aut. olarak bağlanmammış. bunu da şans eseri buldum. IIS üzerinde yayınladıktan sonra bağlantı ayarlarımı SQL Aut. olarak değiştirdim ve sorunum çözüldü.

iyi çalışmalar!
Fatih
Yazınız gerçekten çok yardımcı oldu, teşekkürler Smile
MuammerBenzes
@Fatih : İşinize yaramasına sevindim.
Zafer
Teşekkürler. Sıkışık bir zamanda çok yardımcı oldu.
Tahir Feyzioğlu
Teşekkürler, iis 6 ve framwork 2 de bu komutu her zaman kullanırdım fakat framework 4'de bu sorunun halen devam etmesine çok şaşırdım, kurarken IIS entegrasyonunu yapmaması çok ilginç...