gpt4 book ai didi

.net-4.0 - log4net 和 .net Framework 4.0

转载 作者:行者123 更新时间:2023-12-02 03:58:31 25 4
gpt4 key购买 nike

当我将解决方案更新到 .net 4.0 时,我在 log4net 中遇到了问题,然后我下载了它的源代码并构建了 log4net 并将其定位到 .net 4.0 并在我的项目中使用了它。

最初,当我引用针对运行时 2.0 的 log4net 时,它编译并运行应用程序,但日志不起作用。

现在,当我使用面向 .net 4.0 的 log4net 运行项目时,我收到错误“‘Log4NetTest.TestLog’的类型初始值设定项引发了异常。”

知道如何解决这个问题吗?

编辑:这是内部异常:

InnerException: System.TypeLoadException Message=Inheritance security rules violated while overriding member:  'log4net.Util.ReadOnlyPropertiesDictionary.GetObjectData(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)'.  Security accessibility of the overriding method must match the security accessibility of the method being overriden.  Source=log4net  TypeName=log4net.Util.ReadOnlyPropertiesDictionary.GetObjectData(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)  StackTrace:    at log4net.Repository.Hierarchy.Hierarchy..ctor(ILoggerFactory loggerFactory)    at log4net.Repository.Hierarchy.Hierarchy..ctor() in C:\src\Repository\Hierarchy\Hierarchy.cs:line 150

最佳答案

In the log4net source code, add a [SecurityCritical] attribute to the Util.ReadOnlyPropertiesDictionary.GetObjectData method and build.

刚刚编译了目标框架4.0(不是客户端)的源代码。 1.2.11 版本的源代码已包含此属性,但请务必使用“NET_4_0”作为编译器参数。否则,不会添加该属性。

关于.net-4.0 - log4net 和 .net Framework 4.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2903669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com