Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Menghuraikan XML dengan Pengesahan Skema Terbenam dalam C#?

Bagaimanakah Saya Boleh Menghuraikan XML dengan Pengesahan Skema Terbenam dalam C#?

Susan Sarandon
Lepaskan: 2025-01-21 18:52:15
asal
353 orang telah melayarinya

How Can I Parse XML with Embedded Schema Validation in C#?

Penghuraian XML dan pengesahan skema sebaris dalam C#

Dokumen XML boleh merujuk skema luaran menggunakan atribut xsi:schemaLocation. Walau bagaimanapun, apabila melakukan pengesahan XML dalam C#, anda mungkin mahu memanfaatkan skema yang dinyatakan dalam fail XML daripada memuatkannya secara manual.

Untuk melaksanakan pengesahan automatik berdasarkan mod sebaris, anda boleh menggunakan kaedah berikut:

<code class="language-csharp">using System.Xml;
using System.Xml.Schema;
using System.IO;

public class ValidXSD
{
    public static void Main()
    {
        // 初始化 XmlReaderSettings 实例。
        XmlReaderSettings settings = new XmlReaderSettings
        {
            ValidationType = ValidationType.Schema,
            ValidationFlags = XmlSchemaValidationFlags.ProcessInlineSchema |
                                XmlSchemaValidationFlags.ProcessSchemaLocation |
                                XmlSchemaValidationFlags.ReportValidationWarnings
        };

        // 注册验证事件处理程序。
        settings.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack);

        // 使用设置创建 XmlReader。
        XmlReader reader = XmlReader.Create("inlineSchema.xml", settings);

        // 处理 XML 文件。
        while (reader.Read()) ;
    }

    // 验证回调的事件处理程序。
    private static void ValidationCallBack(object sender, ValidationEventArgs args)
    {
        // 处理验证警告或错误。
        if (args.Severity == XmlSeverityType.Warning)
            Console.WriteLine($"\t警告: {args.Message}");
        else
            Console.WriteLine($"\t错误: {args.Message}");
    }
}</code>
Salin selepas log masuk

Kaedah ini menentukan pengesahan skema menggunakan atribut ValidationType dan menggunakan ValidationFlags yang berkaitan untuk menunjukkan penggunaan skema sebaris dan peletakan skema. ValidationEventHandler digunakan untuk mengendalikan sebarang ralat pengesahan atau amaran yang mungkin berlaku semasa penghuraian.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghuraikan XML dengan Pengesahan Skema Terbenam dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan