.Net C# 利用多個XSD Validation驗證XML

參考:
http://msdn.microsoft.com/zh-tw/library/system.xml.xmlreadersettings.schemas(v=vs.110).aspx

這樣就可以驗證了!

    public class Program {
        public static void Main(string[] args) {
            XmlReaderSettings cdaSettings = new XmlReaderSettings();
            cdaSettings.Schemas.Add(null, "http://sts.vghtpe.gov.tw:8080/EMM/download/downloadXSD/DISNOTE/2.16.840.1.113883.2.33.10.2/1.00.002.do");
            // cdaSettings.Schemas.Add(null, "D:/Temp/XSDAll.xsd");
            cdaSettings.ValidationType = ValidationType.Schema;
            cdaSettings.ValidationEventHandler += new ValidationEventHandler(cdaSettingsValidationEventHandler);

            XmlReader xmlReader = XmlReader.Create("D:/Temp/demo2-1.xml", cdaSettings);
            while (xmlReader.Read()) { }
        }


        public static void cdaSettingsValidationEventHandler(object sender, ValidationEventArgs e) {
            if (e.Severity == XmlSeverityType.Warning) {
                System.Diagnostics.Trace.WriteLine( String.Format("Line: {0}, Position: {1} \"{2}\"", e.Exception.LineNumber, e.Exception.LinePosition, e.Exception.Message));
            } else if (e.Severity == XmlSeverityType.Error) {
                System.Diagnostics.Trace.WriteLine( String.Format("Line: {0}, Position: {1} \"{2}\"", e.Exception.LineNumber, e.Exception.LinePosition, e.Exception.Message));
            }
        }

    }
廣告

About fenjj

Perfect !!??...
本篇發表於 Uncategorized。將永久鏈結加入書籤。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s