1

.CreateInstance()XML をシリアル化しながら、C# プロジェクトの接続ユーティリティで使用しようとしています。.Unwrap()シリアライズ可能な戻り値の型をアンラップし、作成しようとしている型のインスタンスを取得するために使用されます。

String fileToLoad = @"D:\RPMOpen\svnCobra\conversion\aui\Model\bin\Debug\RPM_Model";
String file = Path.GetFileName(fileToLoad);
AbstractResponseMessageData response = 
    (AbstractResponseMessageData)Activator.CreateInstance(file, responseName).Unwrap();

私のアセンブリRPM_Modelatは正常に読み込まれますが、タイプin@"D:\RPMOpen\svnCobra\conversion\aui\Model\bin\Debug\RPM_Model"の結果として、次のエラーが発生します。ARC_LOGONRSresponseName

ARC_LOGONRSメソッド ConnectUtil.Execute のエラー:アセンブリから型を読み込めませんでしRPM_Model, Version=1.0.0.0, Culture=neutral, PublicKeyToken=nullた。



1.エラー で指定されたアセンブリを参照しました。
2. GAC には、フォルダー内の .dll をオーバーライドするものはありません。3.正しいバージョンの .dll があることを確認しました。4. .dll には他の依存関係はありません。5.プロジェクトと .dll のターゲット プラットフォームが同じです。6.アセンブリを適切に参照していることはわかっています。コードを配置してその上にカーソルを合わせると、/Debug



ARCLOGON_RS

クラス RPM.Model.Data.ARCLOGON_RS

f12焦点を合わせてプロパティを確認できます。
7.両方のソリューションをクリーンアップして再構築しました。
8.型にpublic デフォルト コンストラクターがあり、クラスは public です。
9. .dll参照ノードにあります。
10.正しいアセンブリ名がパラメーターとして渡されています。

私の質問は、私のプロジェクトがこのエラーをスローする理由と、診断が完全になくなったので、それを修正する方法について他に考えがあるかどうかです。

助けてくれてありがとう。

4

1 に答える 1

1

typeName を指定するときCreateInstance()は、完全な型をハードコーディングする必要がありました。私のエラーはRPM.Model.Data、私が望むように内部を見ているように見えますが、明らかにそうではありませんでした。エラーを克服するために必要だったのは、単純ではなく編集responseNameすることだけでした。RPM.Model.Data.ARC_LOGONRSARC_LOGONRS

于 2015-02-24T13:44:08.257 に答える