Başlık herşeyi anlatıyor. Ama söz edilmesi gereken bir kaç değişiklik mevcut tabi ve söz de edilmiş:

Scott Guthrie: Visual Studio 2008 and .NET Framework 3.5 Service Pack 1 Beta
Scott Hanselman: VS2008 and .Net 3.5 SP1 Beta - Should You Fear This Release?
Somasegar's WebLog (MSDN Blogger): Visual Studio 2008 and .NET FX 3.5 SP1 Beta available now

Bir şey eklemek istemiyorum, çünkü eminim MS evanjelistleri onlarca defa aynı şeyi yazmışlardır. ;)

Ekleme:
    (tabii ki) InfoQ: New version of .NET Disguised as a "Service Pack"

A while (or may be a year ago), I blogged about the White Screen of Darn. It came with the Visual Studio 2005 designer, and occurs when for a reason designer couldn't render (generally referenced 3rd party) UI components.

And, it happens again.



With the new Visual Studio 2008 interface also we have a new WSoD error screen :).

The problem shows in a form, when an assembly of a 3rd party UI component directly or indirecly referenced multiple times. As the problematic error message will be like "type Asy1.TypeA couldn't be cast to Asy1.TypeA", this shows us, VS designer wrongly assumes same types as different types.

And here is the resolution: Clean the project, and Build it again.

Then, VS corrects its mistake, and shows designer without errror. ;)


Her ne kadar piyasadaki (Java IDE leri dahil) en sağlam IDE'lerden biri olduğunu düşünsem de Visual Studio'nun yeni sürümü, eski sürüm Visual Studio 2003'e göre kesinlikle daha az stabil. Etrafımdaki bir çok kişi C# editörünün background compiling ile daha başarılı hale geldiğini söylese de genel IDE deneyimi olarak daha az verim alındığını düşünüyorum. Şimdiye kadar beni en çok rahatsız eden kusurları sıralamak gerekirse :

  • Hiding Panel'lerin hide etmemesi, daha çok sol tarafta bulunan "Solution Explorer" ve "Properties" panellerinde karşılaştığım bu sorun beni gerçekten çileden çıkarıyor. Sabitleme raptiyesi basılı değilken panel kendiliğinden kayarak hide etmesi gerekirken donup öylece kodunuzun üzerinde kalıyor. Paneli sabitleyip (raptiyeye tıklayarak) tekrar auto-hide moduna sokmak (raptiye ye bir daha tıklayarak) zorunda kalıyorsunuz. Brrr!
  • IDE'nin Bir anda kapanması, uzun süredir bir tik haline gelen CTRL+S hareketim yüzünden şimdiye kadar bir veri kaybına yol açmadı ama gerçekten rahatsız edici.
  • Toolbox'ın resetlenmesi, özellikle önceki maddede söylediğim olaydan sonra gereçekleşen ve 3rd party component kurulumları ile gelen tabların, (componentleri uninstall edip tekrar kurmaya üşenme sonucu) dandik versiyonlarının oluşturulması için gerekli .dll(ler)i bulup refere edilmesini gerektiren gerçekten rahatsız edici bir şey. Tek kaybettiğiniz 3rd party controllerin kısayolları değil ama kendi türemiş veya UserControl'lerinizin kısa yolları da ki bu bir tane daha madde demek bz. aşağı :)
  • Diyelim ki bir sebepten dolayı Toolbox'ınız resetlendi (!), veya yeni bir UserControl yaptınız ve bunu Toolbox'ınıza koymak istiyorsunuz. Eğer UserControl'ünüz programınızın .exe'sinin olduğu projede ise Toolbox'dan "Choose Items..." deyip kendi projenizi yine kendi projenize "Browse..." diyerek refere etmeniz gerekiyor. Ve bu işlemde gayet çalışıyor :). Yalnız ugulamayı derlerken warning almanız olası. Çünkü UserControl'ü kullandığınız yerde derleyici iki tane referansla karşılaşıyor biri yerel assemble içindeki diğeri ise refere edilmiş. Dolayısıyla birini seçiyor (hangisini diye sormayın :)). Bunu daha sonra o referası silerek düzeltebiliyorsunuz ama UserControl, Toolbox'ınızda kalmaya devam ediyor... evet kabul ediyorum uzundu...
  • Form'dan türeyen (yada designer.cs ve resx alt dosyalarına sahip diyelim) .cs dosyalarınızı kopyalayıp isimlendirirken dikkatli olun!

WSOD Örneği Visual Studio .NET 2003'ten Visual Studio 2005'e geçenler yeni bir hata mesajı ile tanıştı. Bu mesaja MS çalışanları tarafından "Blue Screen of Death"e bir gönderme olarak "White Screen of Death" adı takılmış ama kullanıcılar hatanın "fatal" sonuçlar doğurmadığı ve rastgele gelebilmesi ihtimali üzerine bunu hayal kırıklığını temsil eden "White Screen of Darn" şeklinde yeniden adlandırmış. WSoD'ı Windows projelerinde bir formun design görünümünü açıldığında beyaz pencere üzerine hata mesajı, stack trace ve kırmızı bir çarpı şeklinde ortaya çıkıyor. Hatayı verilen mesajdan daha iyi belirlemenin ve engellemenin yolu bir codeproject makalesinde açıklanmış. Ama önerilen yöntem runtime'da olması gereken pencere görünümünü design time da doğru olarak görünmemesi ile sonuçlanabiliyor, kısacası WYSIWYG düşünüşüne biraz aykırı bir çözüm. (Ctor'da "if(this.DesignMode) return;" gibi bir kod tavsiye ediliyor.) Neden böyle bir hata mesajının VS 2003'te olmadığı ama VS 2005'e konulduğu vede doğasını Raghavendra Prabhu'nun MSDN blogundan okuyabilirsiniz.