Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2008 混合模式组装[log4net]赢得';t在.NET4.0中加载,在为.NET4.0重新编译时也不起作用_Visual Studio 2008_Visual Studio 2010_.net 3.5_Log4net_Mixed Mode - Fatal编程技术网

Visual studio 2008 混合模式组装[log4net]赢得';t在.NET4.0中加载,在为.NET4.0重新编译时也不起作用

Visual studio 2008 混合模式组装[log4net]赢得';t在.NET4.0中加载,在为.NET4.0重新编译时也不起作用,visual-studio-2008,visual-studio-2010,.net-3.5,log4net,mixed-mode,Visual Studio 2008,Visual Studio 2010,.net 3.5,Log4net,Mixed Mode,我不喜欢问一个在这里被问了无数次的问题,也不喜欢在博客上到处都是的问题,但是我仍然无法让我升级的项目正常工作 我的应用程序最初是用VS2008编写的,目标是.NET3.5SP1。我刚刚升级到VS2010,并认为我会尝试利用新的语言功能和集成的MEF,所以我将所有项目都改为目标.NET4.0。在正确设置和编译了所有内容(如构建后事件、MEF引用等)之后,我运行了应用程序,发现了一个著名的错误: 混合模式程序集是根据运行时版本“v2.0.50727”生成的,如果没有其他配置信息,则无法在4.0运行时

我不喜欢问一个在这里被问了无数次的问题,也不喜欢在博客上到处都是的问题,但是我仍然无法让我升级的项目正常工作

我的应用程序最初是用VS2008编写的,目标是.NET3.5SP1。我刚刚升级到VS2010,并认为我会尝试利用新的语言功能和集成的MEF,所以我将所有项目都改为目标.NET4.0。在正确设置和编译了所有内容(如构建后事件、MEF引用等)之后,我运行了应用程序,发现了一个著名的错误:

混合模式程序集是根据运行时版本“v2.0.50727”生成的,如果没有其他配置信息,则无法在4.0运行时中加载

然后,我将以下属性添加到
app.config
中的
元素中:

<startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
</startup>
当我这么做的时候,我又回到了起点!(带有混合模式装配错误)


呃。

我在重新编译源代码后,以.NET4.0为目标,最终使所有内容都正常工作。我仍然不喜欢这个,因为每个人都说它应该有效。为了让应用程序最终运行,我还必须做的一件事是使用CodePlex中的MEF2,而不是.NET4.0中内置的MEF2。我不明白为什么这两件事会有关联,但我会回去尝试让log4net保持原样。一旦我完成了,我会在这里发布详细信息,希望它能帮助其他遇到同样问题的人。

我在重新编译源代码后,以.NET 4.0为目标,完成了所有工作。我仍然不喜欢这个,因为每个人都说它应该有效。为了让应用程序最终运行,我还必须做的一件事是使用CodePlex中的MEF2,而不是.NET4.0中内置的MEF2。我不明白为什么这两件事会有关联,但我会回去尝试让log4net保持原样。完成后,我将在此处发布详细信息,希望它能帮助其他遇到相同问题的人。

您重新编译了4.0,但CLR仍将其视为2.0?使用Fuslogvw.exe找出实际找到的内容。当心GAC。@Hans谢谢你的提示,我会调查的!我们还将一些项目从3.5移植到了4.0,但是log4net没有任何问题。。。在客户端配置文件上运行的新项目中使用log4net时出现了唯一的问题,我们很快解决了它()。您重新编译了4.0,但CLR仍然将其视为2.0?使用Fuslogvw.exe找出实际找到的内容。当心GAC。@Hans谢谢你的提示,我会调查的!我们还将一些项目从3.5移植到了4.0,但是log4net没有任何问题。。。唯一的问题是在新项目中使用log4net时出现的,这些项目是在客户机配置文件上运行的,我们很快就解决了()。
[assembly: System.Security.SecurityRules(System.Security.SecurityRuleSet.Level1)]