Makale Özeti

Bu yazımızda Asp.NET MVC Framework 1.0 ile hazırlanmış olan web uygulamalarını Asp.NET MVC Framework 2.0 ‘a yükseltirken hangi adımları uygulayacağımızı hem sihirbaz yardımı ile hem de adım adım bizlerinde nasıl yapabileceğini inceleyerek değinmeye çalıştık.

Makale

Asp.Net MVC Framework cephesinde Microsoft geliştirmelerine son sürat devam ediyor. Bunun sonuçları olarakta çok yakın bir zaman da MVC Framework 2.0 sürümü yayınlandı. Bu sürüm ile gelen yenilikleri zaman içerisinde inceliyor olacağız. Ancak şimdi aklımızı kurcalayan ve daha önemli bir konu olan MVC Framework 1.0 ile geliştirilmiş olan uygulamaların akıbeti ne olacak konusunu inceliyor olacağız.

MVC Framework 1.0 ‘ın çıkışı ve kullanım kolaylıkları sebebi ile bir çok web uygulama geliştiricisi bu tasarı ile uygulama nasıl geliştirileceğdini yoğun bir şekilde inceledi. Geçen zaman içerisinde de bir kısmı uygulama geliştirerek çok başarılı ürünler çıkartmış oldular. Ülkemizde de fazlaca örneği bulunmaktadır. En büyük faydalarından bir kaçı ise, ID ‘ler ile gereksiz sayfa fazlalığının önüne geçilmesi, entity katmanların yoğun bir şekilde kullanılıyor olması, katmansal mimarinin web uygulamalarında rahatlıkla kullanılabiliyor olması, URL yönlendirme işlemlerinin rahatça yapılabilmesi gibi aklımıza bir çırpıda gelenleri bunlardır.

Evet zaman içerisinde bir çok uygulamanın geliştirildiğinden bahsettik. Eğer ki ortada geliştirilen bir ürün varsa bu ürünün yeni çıkan sürümlerine de uyarlanabiliyor olması gerekmektedir. Bu temek kural sebebi ile Asp.Net MVC Framework 1.0 ile geliştirilen web uygulamalarının Asp.Net MVC Framework 2.0 sürümüne yükseltilmesi esnasında yapılması gereken adımlara değinerek bu ihtiyacımızı nasıl gerçekleştirebileceğimizi incelemeye çalışıyor olacağız.

MVC Framework 1.0 sürümünden MVC Framework 2.0 sürümüne yükseltmek için kullanabileceğimiz iki yöntem bulunmaktadır. Bunlardan birincisi bir sihirbaz yardımı ile bir diğeri ise de direk uygulamaya elle müdahale ederektir.

1.) Sihirbaz Yardımı ile Yükseltmek

Sihirbaz yardımı ile MVC Framework 1.0 ile hazırlamış olduğunuz web sayfalarını MVC Framework 2 sürümüne yükseltmek için MvcAppConverter-MVC2RTM.zip (255 KB)  dosyasını bilgisayara indirdikten sonra uygulama dosyasını yani *.sln dosyasını gösterdikten sonra kendisi otomatik olarak dönüştürme işlemini gerçekleştiriyor olacaktır.

 

Peki bu sihirbaz dönüştürme işlemini güzelce yaptı. Ama hangi dosyaların üzerinde değişiklik yapıldığını ve nasıl kullanabileceğizi öğrenmek ihtiyacı hissedebiliriz . Bu bilgiler temel olarak aşağıda yer almaktadır.

  • Visual Studio 2008 ile yapılan uygulamalar üzerinde dönüştürme yapılabilmektedir.
  • Dönüştürülen bütün uygulamanın yedeği alınır
  • C# ve VB ile geliştirilmiş olan uygulamalarda System.Web.Mvc.dll üzerinde güncelleme yapılmaktadır.
    •     Referansları Asp.NET MVC 2 sürümüne göre güncellenir.
    •     System.ComponentDataMode.DataAnnotations 3.5 eklenmektedir.
    • Uygulama üzerinde de değişiklikler yapılmaktadır
    •     Uygulama tipi Asp.Net MVC 2 nin proje şablonu ile uyumlu olacak şekilde değişikliğe uğrar.
    •     web.config üzerinde yer alan referans bilgileri güncellenir.
    •     Yönlendirme yapısı Asp.NET MVC 1.0 ile olan uyumluluğundan Asp.NET MVC 2.0 için uyumluluğa geçmektedir.
    •     /Views/web.config içerisinde yer alan referans bilgileri güncellenmektedir.
    •     JavaScript dosyalarına JQuery bilgileri eklenir ya da güncellenir.
    • Sihirbaz ile yapılan işlemler yukarıdaki adımları izleyecek şekilde olacaktır.

      Yukarıdaki sihirbazı henüz Visual Studio 2010 ve .Net Framework 4.0 üzerinde kullanabilmeniz mümkün değildir. Ancak geliştiricileri bu sürümler içinde dönüştürülme işleminin sağlanması için gerekli çalışmaların yapıldığını belirtilmektedir.

    Ancak sizler ben sihirbaz ile işlemlerimi yapmayı sevmiyorum ya da bu değişiklikleri kendim değiştirmek istiyorum diyorsanız işte bu durumda el ile yükseltme adımlarını takip etmeniz gerekmektedir.

2.) Elle Yükseltmek

Biraz önce başarılı bir yazılımcı tarafında hazırlanmış olan yükseltme sihirbazını kullarak uygulamalarımızı nasıl yeni sürüme yükseltebileceğimizi inceledik. Şimdi ise adım adım biz yapmak istersek bu işlemleri nasıl yapabileceğimize değiniyor olacağız.

Öncelikle MVC Framework 2 sürümünü kullanabilmek için Visual Studio 2008 ve .Net Framework 3.5 'in SP1 sürümlerinin bilgisayarınızda kurulu olması gerekmektedir.

Not: Windows 7 kullanıcıları sadece Visual Studio 2008 ‘in SP1 ‘inin kurmaları yeterli olacaktır. Bilindiği kadarıyla Windows 7 .Net Framework 3.5 SP1 kurulu olarak gelmektedir. Ancak bu özellikleri kullanabilmek için windows özelliklerini aç/kapa ekranını kullanarak .net Framework 3.5.1 seçeneğinin altında yer alan bütün seçeneklerin seçili duruma getirilmesi gerekmektedir. Aksi taktirde Asp.Net MVC 2 sürümünü bilgisayarınıza kuramayacak ve aşağıda anlatacağımız ya da yukarıda anlatmış olduğumuz işlemleri yapamıyor olacaksız.

Gerekli geliştirme araçlarına sahip olduğumuza göre MVC Framework 1.0 ile geliştirilmiş olan web uygulamasını yükseltmeye başlayabiliriz. Bu işlemi adım adım anlatıyor olacağız.

1. Projenin yedeğinin alınması gerekmektedir.

2. *.csproj proje dosyasını not defteri yardımı ile açtıktan sonra ProjectTypeGuid nesnesinin değerine ulaşmamız gerekecektir. Bulmamız gereken GUID {603c0e0b-db56-11dc-be95-000d561079b0} ile {F85E285D-A4E0-4152-9332-AB1D724D3325} şeklindedir. bu değeri bulduktan sonra {F85E285D-A4E0-4152-9332-AB1D724D3325};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc} değerleri ile değiştirilmesi gerekmektedir.

3. Web uygulamasının bulunduğu klasöre eriştikten sonra Web.Config dosyası açılır ve içerisinde verilmiş olan referanslardan System.Web.MVC, Version=1.0.0.0 yazınını bulduktan sonra bu referans bilgisini System.Web.MVC, Version=2.0.0.0 olacak şekilde güncelliyoruz.

4. Views klasörünün içerisinde yer alan Web.config dosyasına da 3. maddede yer alan değişiklikleri uyguluyoruz.

5. Visual Studio ile MVC 1.0 ile hazırlanmış olan projeyi açtıkan sonra (Yukarıdaki değişiklikleri yapmış oluyoruz tabikii) Referanslar bölümünde yer alan System.Web.MVC referansını siliyoruz (1.0 sürümünü). Sonrasında System.Web.Mvc ‘nin 2.0 olan sürümüne ilişkin dll ‘i projeye referans olarak ekliyoruz.

6. Web.config dosyasının içerisine bindingRedirect nesnesinin kullanılabilmesi için aşağıdaki yapılandırma dosyasını ekliyoruz.

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="System.Web.Mvc"
publicKeyToken="31bf3856ad364e35"/>
      <bindingRedirect oldVersion="1.0.0.0"
newVersion="2.0.0.0"/>
    </dependentAssembly>
  </assemblyBinding>
</runtime>

7. Script dosyasınına yeni eklenenleri kullanabilmek için yeni bir MVC 2.0 projesi oluşturduktan sonra olmayan MVC 1.0 ile hazırlanmış olan uygulamada olmayan script dosyalarını 2.0 projesinin içerisinden diğerine kopyalıyoruz.

8. Biraz önce oluşturmuş olduğumuz MVC 2.0 projesi içerisinde yer alan CSS ‘i kullanmak istiyorsanız Site.css ‘i eski projede aynı dosyada yer alan şekilde kopyalıyoruz.

9. Yapılan değişiklikler sonrasında uygulamamızı derliyor ve sorunsuzca çalıştırıyoruz.

El ile adım  adım yaptığımız da gördüğünüz gibi aslında yapacağımız işlemleri basitçe gerçekleştirebilmemiz mümkündür.

Sonuç olarak bu yazımızda Asp.NET MVC Framework 1.0 ile hazırlanmış olan web uygulamalarını Asp.NET MVC Framework 2.0 ‘a yükseltirken hangi adımları uygulayacağımızı hem sihirbaz yardımı ile hem de adım adım bizlerinde nasıl yapabileceğini inceleyerek değinmeye çalıştık.

Umarım Yararlı olabilmiştir.

Kaynaklar
MSDN
Upgrading Wizard

Turhal Temizer