0

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.

同じエラーが発生しない理由がわかりませんか?

助言がありますか?

4

1 に答える 1

0

通常、このエラーは、開発サーバーに同じ名前のアセンブリが 2 つあることを意味します (ファイル名ではなく、アセンブリ名が必要です)。通常は、プロジェクトのプロパティからアセンブリの 1 つの名前を変更し、再コンパイルすることで修正します。

実行時にレコード クラスをコンパイルする FileHelpers を使用しているので、ソリューション内の他の何かと競合する ClassBuilder の名前空間と関係があると思います。名前空間を明示的に設定できます

cb.NameSpace = "MyNameSpace";
Type cls = cb.CreateRecordClass();
于 2013-08-19T09:27:10.850 に答える