我使用 XSD 创建了一个自定义配置部分。为了解析遵循这个新模式的配置文件,我用这个加载资源(我的 .xsd 文件):
public partial class MonitoringConfiguration
{
public const string ConfigXsd = "MonitoringAPI.Configuration.MonitoringConfiguration.xsd";
public const string ConfigSchema = "urn:MonitoringConfiguration-1.0";
private static XmlSchemaSet xmlSchemaSet;
static MonitoringConfiguration()
{
xmlSchemaSet = new XmlSchemaSet();
Stream xsdStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(ConfigXsd);
XmlReader schemaReader = XmlReader.Create(xsdStream);
xmlSchemaSet.Add(ConfigSchema, schemaReader);
}
}
顺便说一句,我的资源是:MonitoringConfiguration.xsd。而另一个部分类(代表 .xsd 文件后面的代码)的命名空间是MonitoringAPI.Configuration
.
问题出在这里:
Stream xsdStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(ConfigXsd);
xsdStream 为空,所以我猜找不到资源!但为什么?
谢谢