Bagaimana saya bisa memaksa aplikasi C# saya untuk berjalan menggunakan runtime .net 4.5? Meskipun saya juga menginstal 4.5, 4.6, 4.7, 4.8, dll?
Alasan saya mencoba melakukan ini adalah karena saya ingin mereproduksi bug yang ada di versi WPF sebelumnya, jadi saya ingin menjalankan kode pada versi .Net yang lebih lama tanpa harus menghapus instalan apa pun.
Saya mencoba yang berikut ini:
- Kerangka target .Net 4.5 dalam pengaturan pembuatan Aplikasi
dan kemudian menambahkan konfigurasi berikut:
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/></startup>
To test if it was running the 4.5 runtime, I tried to access something added after 4.5 :
private static bool Is462Installed()
{
// API changes in 4.6.2: https://github.com/Microsoft/dotnet/blob/master/releases/net462/dotnet462-api-changes.md
return Type.GetType("System.Security.Cryptography.AesCng, System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", false) != null;
}
Tapi itu kembali menjadi kenyataan. Jadi tidak menggunakan runtime .Net 4.5?
Jadi menurut saya itu akan selalu menggunakan runtime terbaru yang telah Anda instal?