LinqPad连接自定义DLL遇System.ComponentModel.Annotations加载错误求助
解决LinqPad加载自定义EF6程序集时System.ComponentModel.Annotations版本错误的问题
针对你遇到的程序集加载错误,可尝试以下几种解决方案:
1. 添加程序集绑定重定向配置
LinqPad运行时可能无法正确解析System.ComponentModel.Annotations的版本,需修改LinqPad的配置文件:
- 找到LinqPad安装目录下的
LinqPad.exe.config文件 - 在
<configuration>节点内添加或更新<runtime>节点内容:<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.ComponentModel.Annotations" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" /> </dependentAssembly> </assemblyBinding> </runtime> - 保存配置后重启LinqPad重试连接。
2. 检查并确保自定义DLL的依赖完整
- 确认你的自定义DLL输出目录中包含
System.ComponentModel.Annotations.dll(版本4.2.0.0) - 使用Visual Studio的「依赖项」窗口或ildasm工具,检查DLL引用的
System.ComponentModel.Annotations版本是否与报错版本一致,若不一致调整绑定重定向的newVersion值。
3. 在LinqPad中手动添加程序集引用
- 在LinqPad的连接设置界面,切换到「Additional References」标签页
- 点击「Add...」按钮,手动选择
System.ComponentModel.Annotations.dll(可从.NET Framework 4.8的参考程序集目录或你的项目输出目录中选取)
4. 升级LinqPad版本(可选)
LinqPad v5.47.0版本较旧,官方后续版本可能已修复此类程序集加载兼容问题,可尝试升级至最新的v5稳定版后重试。
内容的提问来源于stack exchange,提问作者Shabbir Mohammad
相关产品推荐
相关产品推荐

