FileHelpers.dll-编译表达式时出错:第0行:元数据文件'<;未知>';无法找到
本文关键字:lt 未知 gt 文件 表达式 编译 dll- 出错 元数据 0行 FileHelpers | 更新日期: 2023-09-27 18:27:44
我正在使用FileHelpers.dll(v3.0.2.0)解析一个分隔文件。它在我的开发机器上运行良好,但在开发服务器上,它在这个LOC上失败了
var cb = new DelimitedClassBuilder("Delimited", delimiter);
// Do stuff, add fields, etc
Type cls = cb.CreateRecordClass(); // <<<<< This fails on the dev server only
var engine = new FileHelpers.FileHelperEngine(cls);
异常:Error Compiling Expression: Line 0: An assembly with the same simple name 'Modules.CSV, Version=1.0.0.1, Culture=neutral, PublicKeyToken=null has already been imported. Try removing one of the references or sign them to enable side-by-side.
我不明白为什么我没有得到同样的错误?
有什么建议吗?
通常,该错误意味着在开发服务器上有两个名称相同的程序集(不需要文件名,而是程序集名)。您通常会通过重命名项目属性中的一个程序集并重新编译来修复它。
由于您使用的是在运行时编译记录类的FileHelpers,我想这与ClassBuilder中的命名空间与解决方案中的其他内容冲突有关。您可以使用显式设置命名空间
cb.NameSpace = "MyNameSpace";
Type cls = cb.CreateRecordClass();