2012-07-20 98 views
1

我有我從我使用XAML 2009序列化的配置文件生成的以下XSD。但是,當我將架構放入Online Validator I得到src-resolve:無法將名稱'scg:List'解析爲(n)'元素聲明'組件。錯誤。XSD無效:無法將名稱xxx解析爲(n)'元素聲明'組件

<?xml version="1.0" encoding="utf-8"?> 
<xs:schema xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:csu="clr-namespace:ConfigurationUtilityFunctions.Section.User;assembly=ConfigurationUtilityFunctions" xmlns:csw="clr-namespace:ConfigurationUtilityFunctions.Section.WebConfig;assembly=ConfigurationUtilityFunctions" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=mscorlib" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="clr-namespace:ConfigurationUtilityFunctions;assembly=ConfigurationUtilityFunctions" xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
    <xs:import namespace="clr-namespace:System.Collections.Generic;assembly=mscorlib" /> 
    <xs:element name="ConfigProfile"> 
    <xs:complexType> 
     <xs:sequence> 
     <xs:element name="ConfigProfile.ConfigSections"> 
      <xs:complexType> 
      <xs:sequence> 
       <xs:element ref="scg:List" /> 
      </xs:sequence> 
      </xs:complexType> 
     </xs:element> 
     </xs:sequence> 
     <xs:attribute name="ProfileId" type="xs:string" use="required" /> 
     <xs:attribute name="InstanceName" type="xs:string" use="required" /> 
     <xs:attribute name="ProfileDesc" type="xs:string" use="required" /> 
     <xs:attribute name="ProfileName" type="xs:string" use="required" /> 
     <xs:attribute name="ProfileType" type="xs:string" use="required" /> 
    </xs:complexType> 
    </xs:element> 
    <xs:element name="IISSection"> 
    <xs:complexType> 
     <xs:attribute name="AnonymousUser" type="xs:string" use="required" /> 
     <xs:attribute name="ApplicationPoolName" type="xs:string" use="required" /> 
     <xs:attribute name="Port" type="xs:unsignedByte" use="required" /> 
     <xs:attribute name="VirtualDirectoryAlias" type="xs:string" use="required" /> 
     <xs:attribute name="WebsiteName" type="xs:string" use="required" /> 
     <xs:attribute name="WebsiteRoot" type="xs:string" use="required" /> 
    </xs:complexType> 
    </xs:element> 
</xs:schema> 

回答

1

你的XML命名空間scg實際上指的是:

clr-namespace:System.Collections.Generic;assembly=mscorlib 

我懷疑你的架構驗證是否有訪問mscorlib組裝。

+0

好的,謝謝你的回答。我必須再等幾分鐘才能讓我接受它。 – twreid 2012-07-20 15:32:31

+0

@twreid沒問題。我想知道爲什麼你有一個引用'Generic.List'對象的模式。 – Aphelion 2012-07-20 15:50:02

+0

我從我的應用程序創建的配置文件生成該模式。配置文件以XAML編寫器作爲XML序列化。然後,當我反序列化它時,我已經準備好了我的配置文件對象。 – twreid 2012-07-20 15:51:41

相關問題