我的应用程序引用了另一个包含XSD文件的项目。
获得XSD的最佳方式是什么?
我做了一些谷歌搜索并找到了加载程序集的建议并从中得到了它,有没有更简单的方法?
答案 0 :(得分:2)
如果XSD是程序集中的嵌入式资源,那么您需要从程序集中获取它。
如果您的项目引用并使用程序集,则无需再次加载它(内存中不需要2个副本)。
进入程序集的最简单方法是使用其中定义的类型之一:
Type t = typeof(TypeInOtherAssembly);
Assembly assembly = t.Assembly;
assembly.GetManifestResourceStream(...);
答案 1 :(得分:0)
如果您已将XSD添加为资源,那么最简单的方法是使自动生成的Properties.Resources
类公开显示并引用自动生成的属性。您还可以将Properties.Resources
保留在内部并添加InternalsVisibleTo
属性,以允许其他程序集具有访问权限。
除了这种方法,您可以使用目标程序集上的GetManifestResourceStream
来提取XSD信息。