我已经创建了一个在其默认应用程序中打开文件VB .NET
应用 - 提取信息并将其返回到窗体上的列表视图。最佳方式交互
所有的代码是在我的主要形式。其主要形式有它
Imports Microsoft.Office.Core
Imports Microsoft.Office.Interop.Word
Imports Microsoft.Office.Interop.Excel
如果将来我想修改我的软件包含在这个版本没有想到的其他文件类型,我是对于我希望打开的所有文件类型(包括办公室)来说,最好为每个文件类型添加新类并在各个类中包括“导入”?
因此,例如,我会:
- OpenFileDWG.vb
Imports Autodesk.AutoCAD.Runtime
OpenFileDOC.vb
Imports Microsoft.Office.Interop.Word
等等,等等 这是一个标准方法吗?如果我这样做,我可以使用:
If exists LCase(My.Computer.FileSystem.GetFileInfo(Filepath).Extension) THEN strFileOpener = OpenFileDWG & Extension Private fileOpener As strFileOpener
请问这种方法的工作,或将我还需要引用.dll文件中的主要应用,使得这种方法不值得?
如果我用这个办法,我能不能给.vb文件作为更新的一部分?
任何意见是非常感谢。
在我看来,像[工厂设计模式(https://msdn.microsoft.com/en-us/library/ee817667.aspx)是你所需要的。将不同的文件类型分为不同的类,并让它们全部实现基本接口(打开文件,读取内容等)。然后为每个类创建一个抽象工厂类和一个具体工厂(对于每种文件类型都是如此)。启用新的文件类型插件,您可以使用[MEF(https://msdn.microsoft.com/en-us/library/dd460648%28v=vs.110%29.aspx)来加载具体类。 –
“最佳实践”的问题大都是题外话堆栈溢出,因为他们吸引自以为是的答案和垃圾邮件。 – cybermonkey
Thankyou Zohar - 这正是我寻找的答案。 – GoodJuJu