2011-01-15 9 views
3

私のC#クラスでうまくいきましたが、昨日からプログラムを実行しようとしたときに突然次のエラーが発生しました。私が解決しようとすると、それは成功裏に構築されています。Cでタイプをロードできませんでした

Could not load type 'FileNet.Api.Admin.IRepository' from 

アセンブリ 'FileNet.Api、 バージョン= 4.0.0.0、文化=中立、 なPublicKeyToken = 63fc2fb3fdeef4f1'。

ソリューションをデバッグしようとすると、上記のエラーがSetOSNames()で発生します。私はSetOSNames()に入ることができません。方法。

private void IntializeVariables(IConnection connection) 
{ 
    domain = Factory.Domain.FetchInstance(connection, null, null); 
    domainName = domain.Name; 
    ost = domain.ObjectStores; 
    SetOSNames(); ///Error thrown here 
} 

// 
// Intializes the ArrayList osNames with object store names. 
// 
public void SetOSNames() 
{ 
    IEnumerator ie = ost.GetEnumerator(); 
    while (ie.MoveNext()) 
    { 
     IObjectStore os = (IObjectStore)ie.Current; 
     osNames.Add(os.DisplayName); 
    } 
} 
+1

例外はかなり自明です。 'FileNet.Api、Version = 4.0.0.0、Culture = neutral、PublicKeyToken = 63fc2fb3fdeef4f1'アセンブリには存在しない' FileNet.Api.Admin.IRepository'タイプをロードしようとしています。 –

+0

あなたは間違ったコードを投稿しました。私たちが見る必要があったのは、 'IRepository'タイプを定義する' FileNet.Api.Admin'の場所でした。 (ヒント、ヒント) –

+1

前のコメントに加えて:コードは、前に加えられた変更のために突然動作を停止します。あなたが変更したものを見つけて、それを段階的に元に戻すか、ソース管理で作業している場合は、前のバージョンを入手してください。 –

答えて

5

を助けてくださいコンパイラは、参照アセンブリが実行時に見つかったアセンブリと一致しないことを示している、あなたのコードに満足しています。 Fuslogvw.exeツールを使用して、どのアセンブリが読み込まれているか調べます。失敗したバインドだけでなく、すべてのバインドをログに記録してください。古いバージョンがGACに格納されている可能性があるため、間違ったバージョンのFileNet.Api.dllが見つかっている可能性があります。あなたの開発マシンでGACを使用しないでください。

+0

あなたは本当に正しいです。 GACが問題でした。どうもありがとうございました – acadia

関連する問題