Otrzymuję następujący wyjątek:
Zestaw w trybie mieszanym jest oparty na wersji „v2.0.50727” środowiska wykonawczego i nie można go załadować do środowiska wykonawczego 4.0 bez dodatkowych informacji o konfiguracji.
ponieważ próbowałem wyeksportować raport kryształu z mojego programu WPF ...
Dodałem już w pliku app.config ...
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true"/>
</runtime>
Każdy ekspert może pomóc ????
Odniesienie, które znalazłem: http://www.davidmoore.info/2010/12/17/running-net-2-runtime-applications-under-the-net-4-runtime
.net
visual-studio-2010
.net-4.0
ado.net
crystal-reports
Christina Wong
źródło
źródło
SGEN
, to poprawka musi znajdować się w plikusgen.exe.config
oboksgen.exe
. Na przykład dla VS 2015 utwórzC:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\sgen.exe.config
. Źródło: SGEN Montaż w trybie mieszanym Minimalna zawartość pliku:<configuration><startup useLegacyV2RuntimeActivationPolicy="true"/></configuration>
Odpowiedzi:
Spróbuj użyć tego dokładnego tagu startowego w pliku app.config w węźle konfiguracji
źródło
Wyjątek wyraźnie wskazuje, że jakiś składnik .NET 2.0.50727 został uwzględniony w .NET 4.0. W pliku App.config użyj tego:
To rozwiązało mój problem
źródło
<startup useLegacyV2RuntimeActivationPolicy="true" />
Dodaj atrybut useLegacyV2RuntimeActivationPolicy = "true" w pliku app.config aplikacji.
Stara wartość
Nowa wartość
To rozwiąże twój problem.
źródło
W rzeczywistości miałem ten sam problem z rozwiązaniem odwrotnym . Zaktualizowałem projekt .NET do .NET 4.0, a następnie wróciłem do .NET 3.5. Plik app.config w moim projekcie nadal zawierał następujące elementy, które powodowały powyższy błąd:
Rozwiązaniem tego błędu było przywrócenie odpowiedniego odniesienia 2.0 w następujący sposób:
Jeśli więc obniżenie wersji powoduje powyższy błąd, może być konieczne utworzenie kopii zapasowej obsługiwanej wersji .NET Framework.
źródło
U mnie to było rzucane podczas uruchamiania testów jednostkowych pod
MSTest
(VS2015). Musiałem dodaćw
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\TE.ProcessHost.Managed.exe.config
Błąd montażu MSTest w trybie mieszanym w VS2015
źródło
Włączenie starszej wersji z app.config nie działa dla mnie. Z nieznanych powodów moja aplikacja nie aktywowała zasad środowiska wykonawczego V2. Znalazłem pracę wokół tutaj .
Włączenie starszej wersji z app.config jest zalecanym podejściem, ale w niektórych przypadkach nie działa zgodnie z oczekiwaniami. Użyj następującego kodu w aplikacji głównej, aby wymusić zasady Legacy V2:
źródło
Spróbuj użyć innego pliku konfiguracyjnego (nie tego z Twojego projektu) i RESTART Visual Studio:
lub
źródło
.config
który znajduje się w aplikacji i zwykle jest potrzebny do dodatkowych konfiguracji aplikacji, nie byłoby dobrym rozwiązaniem.Jeśli błąd występuje z kolumną błędu „Plik” jako SGEN, to poprawka musi znajdować się w pliku
sgen.exe.config
oboksgen.exe
. Na przykład dla VS 2015 utwórzC:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\sgen.exe.config
. Minimalna zawartość pliku:<configuration><startup useLegacyV2RuntimeActivationPolicy="true"/></configuration>
Źródło: zespół SGEN w trybie mieszanym
źródło