关于编译后自动生成dll的问题

kongxh1218 2011-05-12 09:27:21
最近在一个项目中用到了log4net,我需要使用的版本是1.2.10.0,但是在编译网站之后会自动生成一个1.2.9.0的log4net.dll
,这时候运行程序就会抛出如下异常:

未能加载文件或程序集“log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)

把这个dll删掉,重新引用1.2.10.0的版本后可以正常运行,但是只要一编译,就又会变成1.2.9.0的版本,这是什么情况
...全文
137 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
子夜__ 2011-05-13
  • 打赏
  • 举报
回复
一编译就会降低一个版本?

。。。。。。。

你的文件包里有几个版本。
kongxh1218 2011-05-12
  • 打赏
  • 举报
回复
我这个项目中引用了自己公司的一个a.dll,我新建了一个控制台程序试了一下,只要引用了这个a.dll,
编译之后就会生成一些其他的dll(包括log4net.dll),但是在这个控制台程序中生成的log4net.dll
的版本是正确的,也就是1.2.10.0,编译web site后生成的dll确是1.2.9.0,这是为何。

另外,我在web site中添加a.dll引用的时候就会自动生成log4net.dll,而不是编译之后才会生成。这
时候自动生成的log4net.dll确是正确的版本。
wtj2832 2011-05-12
  • 打赏
  • 举报
回复
直接引用1.2.10.0dll,不要引用log4net的项目,或者你下载一个最新版的log4net的项目,然后对项目进行引用
xuexiaodong2009 2011-05-12
  • 打赏
  • 举报
回复
a.dll应该也引用了log4net.dll
web site应该也引用了log4net.dll
两个版本不一样

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧