Reputation: 4650
I had to migrate a .NET 3.5 to 4.0 but some dll's were not loading, after googling I found that creating an app.config would solve it:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" />
</startup>
</configuration>
I would like to setup these options without using configuration files, is it possible?
Upvotes: 2
Views: 3898
Reputation: 564791
It is possible to set this at runtime, from within a .NET application or library, with some limitations. You can use the ICLRRuntimeInfo
interface to handle this. For details, see this article I wrote.
Upvotes: 6
Reputation: 942197
It is technically possible. You'd have to host the CLR yourself so you can call the ICLRRuntimeInfo::BindAsLegacyV2Runtime() method before you create the primary AppDomain. A .config file would normally be a much lower pain point unless you are already hosting.
Upvotes: 1