2009-03-11 27 views
2

.NET Framework Sürüm 3.0'da (VS2008) derlenmiş Windows altında çalışan bir .NET kullanıcı uygulamasına (.exe) sahip olduğumu varsayalım. Bu uygulama, .NET Framework Sürüm 2.0 (VS2005) kullanarak farklı bir bilgisayarda derlenmiş başka bir .NET derleme (.dll) yüklerse, yüklü derleme var olan 3.0 çalışma zamanı (geriye doğru uyumluluk modunda çalışır) kullanır mı? Veya .NET Framework 2.0 çalışma zamanı sistemin işlem alanına yüklenir ve şimdi eşzamanlı olarak çalışan iki .NET çalışmasına sahibiz?Aynı anda çalışan .NET CLR'nin birden çok sürümü

Onaylama: Bu VS2008 çoklu hedeflemeyi kullanmıyor.

cevap

1

Açıklandığı gibi, aynı işlem alanındaysa, 3.0'ın altında çalışır. Eğer iki farklı CLR'nin dönmesini istiyorsanız, bir servis sınırlaması oluşturmanız gerekecektir (web servisi veya WCF burada iyi çalışıyor - 2.0 için WCF değil) ve diğer uygulamadan servisi arayın.

+0

Gregory, iki farklı CLR dediğinizde, .NET 1.1 CLR? Çünkü bundan sonra .NET 2.0 CLR ve yayımlanmamış .NET 4.0 CLR var. –

+0

Evet, teknik olarak, üstte 3.0 ve 3.5 ile sadece 2.0 var. Fakat teknik olarak, 3.5'e kurulu lib'leri serbest bırakırken, 2.0'ın üzerinde oturabileceğiniz kütüphaneler var. AJAX akla geliyor. –

+0

Ancak teknik olarak, üç temel kitapçık olarak 1.0, 1.1 ve 2.0 sürümünüz var. –

7

.NET 3.0 CLR yok. .NET 3.0 ve 3.5, .NET 2.0 CLR'yi kullanır.

Elbette, .NET 3.0 uygulamanız .NET 3.0 özelliklerini kullanıyorsa, .NET 3.0'ın yüklenmesi gerekir.

+0

Oh temiz, bunun farkında değildim. Yani tüm bu 3.0 ve 3.5, kodunuzda kullanabileceğiniz bir grup yeni meclis (vakıf, vs.). – Todd

1

.NET çalışma zamanı sürümleri genellikle geriye dönük olarak uyumludur, bu nedenle 3.0 çalışma zamanı 2.0 derlemesini barındırır (3.0'ın temel olarak 2.0 ile aynı çalışma süresinden bahsetmez). Her durumda, CLR'nin iki sürümü aynı işleme yüklenemez.

İlgili konular