2015-07-03 84 views

回答

2

一些代碼:

XmlDocument doc = new XmlDocument() ; 
doc.load(xmlFileName) ; 
doc.Schemas.Add("",xsdFileName); 
doc.Schemas.Compile(); 
TheSchemaErrors = new List<string>() ; 
TheSchemaWarnings = new List<string>() ; 
doc.Validate(Xml_ValidationEventHandler); 
if (TheSchemaErrors .Count>0) { // display errors } 
if (TheSchemaWarnings.Count>0) { // display warnings } 
... 
private List<string> TheSchemaErrors ; 
private List<string> TheSchemaWarnings ; 

private void Xml_ValidationEventHandler(object sender,ValidationEventArgs e) 
{ 
    switch (e.Severity) 
    { 
    case XmlSeverityType.Error : TheSchemaErrors .Add(e.Message) ; break; 
    case XmlSeverityType.Warning : TheSchemaWarnings.Add(e.Message) ; break; 
    } 
} 
+1

這不是一個好的答案,因爲您只是做了代碼轉儲,沒有任何解釋發生了什麼。你至少可以做的是評論代碼並提及相關的類。 –

+0

謝謝!這就是我正在尋找幾個小時 – kodi1911

+0

@Riciculated樣條:你的評論通常是真實的。但在這種情況下,代碼是不言自明的:我提取了我的一個應用程序的一些代碼,並將其重構爲可讀。如果需要澄清本規範的任何部分,論壇中的很多人都可以回覆。 – Graffito