今天帮一位新同事配置.net环境,报这个错。
Could not load file or assembly 'System.Runtime.Serialization, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or
one of its dependencies. The module was expected to contain an assembly manifest.
google上没有找到原因,郁闷了很久。
后来在博客园找到了给力贴,先查看了IIS的配置,
是2.0.50727版本的,
找到这个版本的相关配置,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config。
删除web.config配置文件的引用配置项。
<add assembly="System.Runtime.Serialization, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"/>。
页面不报错了。~~
原因:
web.config是一个公用的配置项。在我们的项目中,不引用System.Runtime.Serialization,但是可以使用它,就是公用配置的功劳了。
公用配置调用C:\WINDOWS\assembly的值,如果调用不到,或者调用的版本不正确,就会产生如上的问题。