0

プラグイン作成者がユーザー定義の「エクスポート」機能を提供するために実装できるインターフェースをアプリケーションに定義しようとしています。次のようになります。

public interface IFooExporter
{
    void ExportFoo(Foo foo, string path);
}

ただし、プラグインの作成者には、「パス」がファイル名ではなくフォルダーを表すことを (明示的に、ドキュメントだけでなく) 知らせる必要があります。エクスポート プロセスの一部としてファイルを作成するのは、彼らの責任です。

パスがファイル名ではなくフォルダーであることを強制する最良の方法は何ですか? 私の最善の推測は、文字列の代わりに DirectoryInfo を使用することです。

public interface IFooExporter
{
    void ExportFoo(Foo foo, DirectoryInfo folder);
}

それは良い解決策ですか、それとも DirectoryInfo インスタンスを渡す際に私が気付いていない落とし穴がありますか?

4

3 に答える 3

1

変数にもっと明示的に名前を付けてください。単なるパスですか?いいえ、そうではないと言っていますが、まだ一般的な名前を付けています。これに folderPath という名前を付けると、混乱が少なくなり、これを実装者に明示的に伝える必要が少なくなります。

于 2008-11-26T22:38:53.430 に答える
1

ソリューションを実装していないため、DirectoryInfo をパラメーターとして使用するソリューションに同意します。文字列を指定した場合、渡される文字列を停止する方法はありません。

于 2008-11-26T22:48:04.283 に答える
1

XML コメントを使用すると、Visual Studio の Intellisense ポップアップに表示されます。

/// <summary>
/// Type in the text you want to appear
/// </summary>
于 2008-11-26T22:31:05.660 に答える