Visual Studio 2010 ile DevExpress 9.1.3' ün WPF kontrolleriyle bir şeyler denerken "This method explicitly uses CAS policy, which has been obsoleted by the .NET Framework. In order to enable CAS policy for compatibility reasons, please use the NetFx40_LegacySecurityPolicy configuration switch. Please see http://go.microsoft.com/fwlink/?LinkID=155570 for more information." şeklinde bir hata aldım. Hatayı DevExpress' in WPF GridControl' ününün DataSource' una bir generic list veri eşitlediğimde gerçekleşti. Hatada geçen kelimelerden de tahmin edilebileceği gibi hatanın kaynağı uyumsuzluk. Bu da çok doğal ne de olsa Framework 4.0 ile Framework3.5 için yazılmış bir component kullanmaya çalışıyoruz.
Çözüm 1: Eğer uygulamanızın framework 4.0 ile çalışması gerekmiyorsa Solution Explorer' da uygulama sağ tıklayıp özellikler penceresinden Target Framework' ü 3.5 olarak değiştirin. 4.0 özelliklerini kullanamayacak olsanız da Visual Studio 2010 ile çalışmaya devam edebilirsiniz.
Çözüm 2: Benim gibi uygulamam şimdilik idare etsin Devexpress 2010 yakında release olacak diyorsanız ya da hatayı devexpress componenti yüzünden almamışsanız aşağıdaki satıları uygulamanızın app.config dosyasındaki cofiguration bölümünün içine eklemek suretiyle de hatayı bertaraf edebilirsiniz.
Not: Çözüm 2 tavsiye ettiğim bir yol değil ne de olsa böyle istisnai durumlar ile framework' ün düşünüldüğü şekilde çalışmasının önüne geçmiş oluyoruz. VS 2010 henüz çıktı ve sadece geçici bir çözüm olarak kullanabilirsiniz.
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true"/>
</runtime>