Pages

AJAX Extension kurulu olmayan sunucuda ASP.NET AJAX projesi çalıştırmak

 

Son zamanlarda gerek mail yoluyla, gerek yakın çevremden en fazla aldığım sorulardan ve sorunlardan biri de, yapılan bir ASP.NET AJAX projesinin bir sunucuya atıldığında çalışmamasıydı. Bildiğiniz gibi ASP.NET AJAX tam sürümü ile birlikte artık Global Assembly Cache'e atılan dll kütüphaneleri üzerinde çalışmaya başladı.(Yani artık Bin dizini içerisine referans olarak dll dosyaları eklenmiyor) Sorunu çözebilmek için bloglardan ve forumlardan biraz araştırma yaptım ama ilgili bir konu bulamadım. Birkaç denemeden sonra (sanırım) sorunu çözdüm. Yapılması gereken işlemler şunlar:
1- Öncelikli olarak ASP.NET AJAX projenize Bin dizini açın ve buraya referans olarak System.Web.Extensions.dll ve System.Web.Extensions.Design.dll dosyalarını ekleyin. Bu dll kütüphanelerini C:\Program Files\Microsoft ASP.NET\ASP.NET 2.0 AJAX Extensions\v1.0.61025 dizininden elde edebilirsiniz.
2- Uygulamanızın web.config dosyasında bazı değişiklikler yapmanız gerekecek. Buradaki bazı tanımlamalardaki type ifadeleri içerisinde yer alan System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 kısımlarındaki Version=1.0.61025.0, Culture=neutral, PublicKeyToken= 31bf3856ad364e35 ifadelerini kaldırmanız gerekecektir. Bu kısımlar, zaten dll dosyalarının Global Assembly Cache'den okunmasını sağlayan açıklamalardır. Bu şekilde artık uygulama GAC'daki dll dosyalarını değil, Bin dizinindeki dll dosyalarını kullanacaktır. (Bu işlemi Find-Replace ile kolayca yapabilirsiniz.)

3- Son olarak uygulamanın bulunduğu dizini virtual directory (sanal dizin) olarak tanımlamak gerekecek.

Not:Uğur UMUTLUOĞLU’nun bloğundan alıntıdır.

Hiç yorum yok: