c#从引用项目中获取xsd的最佳方法

时间:2010-01-20 17:21:50

标签: c# xsd assemblies

我的应用程序引用了另一个包含XSD文件的项目。

获得XSD的最佳方式是什么?

我做了一些谷歌搜索并找到了加载程序集的建议并从中得到了它,有没有更简单的方法?

2 个答案:

答案 0 :(得分:2)

如果XSD是程序集中的嵌入式资源,那么您需要从程序集中获取它。

如果您的项目引用并使用程序集,则无需再次加载它(内存中不需要2个副本)。

进入程序集的最简单方法是使用其中定义的类型之一:

Type t = typeof(TypeInOtherAssembly);
Assembly assembly = t.Assembly;
assembly.GetManifestResourceStream(...);

答案 1 :(得分:0)

如果您已将XSD添加为资源,那么最简单的方法是使自动生成的Properties.Resources类公开显示并引用自动生成的属性。您还可以将Properties.Resources保留在内部并添加InternalsVisibleTo属性,以允许其他程序集具有访问权限。

除了这种方法,您可以使用目标程序集上的GetManifestResourceStream来提取XSD信息。