Mixed Mode Error when building in Release Mode

2019-02-22 10:20发布

问题:

I have c# asmx service project that was running on framework 2 with vs 2008 Now i have updated it to framework 4 with vs 2010

when i build dll in debug mode it compiles successfully but when i build in release mode i get the following error:

Error 51 Mixed mode assembly is built against version 'v1.1.4322' of the runtime and cannot be loaded in the 4.0 runtime without additional configuration information. C:\Service\MycService\SGEN

UPDATE: Ok, I change the framework to 3.5 from project properties its build ok in release mode, but what's the problem in framework 4.0. I need it to be working in framework 4.0

回答1:

I got it working By going to Project-> Right Click-> Properties-> Build->Generate Serialiazation Assembly Change Value here "Auto" to Off and build on release mode it now works



回答2:

Do you have unmanaged code in your solution, or do you build against one?
We had run into such issue at work when we moved to work with VS2010 and .net 4.
What worked for us was adding App.config file to the project which contains the following:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
  </startup>
</configuration>


回答3:

You would have to put it inside configuration tag check the link http://msdn.microsoft.com/en-us/library/bbx34a2h.aspx, which was also there in previous link answer.