未加载程序集c#

未加载程序集c#,c#,.net,log4net,C#,.net,Log4net,我有一个项目Common,其中包含一个log4net CustomAppender。我在所有其他项目中引用该项目,并在app.config中配置log4net appender。除了一个在尝试实例化Appender时失败的项目外,一切都很顺利 输出显示以下错误: System.TypeLoadException: Could not load type [Common.Appenders.MyCustomAppender]. Tried assembly [log4net, Version=1.

我有一个项目
Common
,其中包含一个log4net CustomAppender。我在所有其他项目中引用该项目,并在
app.config
中配置log4net appender。除了一个在尝试实例化Appender时失败的项目外,一切都很顺利

输出显示以下错误:

System.TypeLoadException: Could not load type [Common.Appenders.MyCustomAppender]. Tried assembly [log4net, Version=1.2.11.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a] and all loaded assemblies at log4net.Util.SystemInfo.GetTypeFromString(Assembly relativeAssembly, String typeName, Boolean throwOnError, Boolean ignoreCase) at log4net.Util.SystemInfo.GetTypeFromString(String typeName, Boolean throwOnError, Boolean ignoreCase) at log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ParseAppender(XmlElement appenderElement) log4net:ERROR Appender named [MyCustomAppender] not found. 从代码中,我调用
log4net.Config.XmlConfigurator.Configure()
。如果我在调用log4net configure之前使用
assembly.load(“Common”)
手动加载程序集,那么对于非工作项目,一切都很好


知道当通过反射实例化
MyCustomAppender
时为什么不加载程序集吗?如何解决此问题?

尝试将程序集名称放在类型名称之后

<appender name="MyCustomAppender" type="Common.Appenders.MyCustomAppender,Common">


请记住,程序集的名称不一定与VisualStudio中的默认命名空间或项目名称相同此处的相关名称是输出名称(即生成的dll的文件名)

是否为生成标记为复制本地的公共项目?@RickHodder Yes,是的,所有必需的DLL都已就位。配置文件中没有任何内容可以帮助log4net确定它需要加载名为“Common”的程序集本身。类型的命名空间名称不相关。所以它不起作用。尝试添加
、Common
,就像在上面的“type”属性中添加一样。我个人很快就厌倦了没有调试器的xml编程语言,只在代码中配置它。瑞克,不幸的是,这不是:(.是与我的机器相关的东西…它在另一台机器上工作…所以不知道发生了什么这解决了我的问题与同一个问题。希望这将被接受为解决方案。