我即将在我的应用程序中定义一个接口,插件编写者可以实现该接口以提供用户定义的“导出”功能。它看起来像这样:
public interface IFooExporter
{
void ExportFoo(Foo foo, string path);
}
但是,我需要让插件编写者知道(明确地,不仅仅是在文档中)“路径”代表一个文件夹,而不是文件名。作为导出过程的一部分,他们有责任创建文件。
强制路径是文件夹而不是文件名的最佳方法是什么?我现在最好的猜测是使用 DirectoryInfo 而不是字符串:
public interface IFooExporter
{
void ExportFoo(Foo foo, DirectoryInfo folder);
}
这是一个好的解决方案,还是在传递 DirectoryInfo 实例时存在我不知道的陷阱?