私はカスタム拡張を書くことによってカスタマイズできるアプリケーションを持っています。それらはすべてproj\Extensions
フォルダにあります。実行時に私のCore
プロジェクトは、フォルダからすべての拡張子を読み込み、コードを実行します。問題は、Core
プロジェクトがこれらの追加ライブラリへの参照を見つけることができないため、拡張機能の1つが追加ライブラリを使用する場合です。ロードされたdllへの参照を見つける
だから例えば私が持っている私のCore
プロジェクトに:私の拡張機能の一つで
public void Preview(IFileDescription fileDescription)
{
var extension = Path.GetExtension(fileDescription.FilePath);
var reader = _readerFactory.Get(extension);
Data = reader.GetPreview(fileDescription);
}
私は唯一のインタフェースについて
public DataTable GetPreview(IFileDescription options)
{
var data = new DataTable();
using (var stream = new StreamReader(options.FilePath))
{
var reader = new CsvReader(stream); // <- This is from external library and because of this Core throws IO exception
}
/*
...
*/
return data;
}
Core
を知っているので、読者の1は、例えば使用する場合CsvHelper.dll
FileNotFound
の例外があります。Core
はCsvHelper.dll
が見つからないためです。特定のフォルダに追加のライブラリを探すようコンパイラーに指示する方法はありますか? Reference Paths
を使用しましたが、問題は解決しませんでした。それでも同じ例外が投げられました。
ありがとうございました。私は7分でこの答えを受け入れるでしょう:) – FCin