C# Essentials


XML Programming Using C# and .NET, Visual Studio 2017 – 4 Days

Course Description – XML Programming Using C# and .NET, Visual Studio 2017

This comprehensive and practical four-day XML Programming Using C# and .NET course builds skills in .NET’s XML processing APIs—chiefly parsing using XmlReader and the Document Object Model (DOM), writing XML streams using XmlWriter, transformations using XPath and XSLT, and LINQ to XML, all using the .NET Framework XML classes and the C# language. It also covers XML serialization according to XML Schema and the tight coupling between XML and ADO.NET. SQL Server is used for the database examples. The course is intended for students with a working knowledge of XML who want to build XML applications or components using .NET and the C# language. Everything in the course adheres to W3C and .NET standards for highly portable code. Visual Studio 2017 with .NET 4.6.1 is used as the development environment.

The course includes extensive programming examples, a progressively developed case study, and several tools for manipulating XML documents. All source code is in C# and is provided with the course.

Upon completion of this course the student will be equipped to program XML applications in .NET and understand which XML and .NET technologies to apply for the problem domain.

What You Will Learn

  • Understand the purpose of the .NET Framework XML classes
  • Parse XML data streams using XmlReader classes
  • Validate XML data streams that are described by a DTD or an XML Schema
  • Use the XmlWriter class to create XML data streams
  • Modify, create and delete information in an XML document using the Document Object Model (DOM) .NET classes.
  • Use XML Serialization to persist XML data
  • Acquire a working knowledge of the use of ADO.NET with XML
  • Use XPath to query for content in an XML document
  • Use the XPathNavigator class to parse and edit XML documents
  • Use XSLT to transform XML documents into text, HTML or other XML
  • Use Language Integrated Query (LINQ) to manipulate XML documents


Ability to read and to write well-formed XML. A working knowledge of programming the .NET Framework using C#. A working knowledge of ADO.NET is recommended for the portion of the course dealing with ADO.NET and XML.


1 .NET Framework XML Overview

  • XML in the .NET Framework
  • .NET XML Namespaces and Classes
  • .NET XmlReader and XmlWriter
  • .NET DOM Parser
  • XML Serialization
  • XML and ADO.NET
  • XPath and XSLT
  • Language Integrated Query and XML
  • XML and the Web

2. Reading XML Streams in .NET

  • XML Document Streams
  • The XmlReader Class
  • XmlReaderSettings
  • Accessing Node Properties with the .NET XML Classes
  • Accessing Attribute Values
  • Traversing the XML Document
  • Catching XmlExceptions

3. Validating XML Streams

  • Specifying Valid Documents with XML Schema and DTD
  • Using Visual Studio to Create Schemas
  • Validating XML with XmlReader
  • .NET Schema Object Model

4. Writing XML Streams in .NET

  • The XmlWriter Class
  • XmlWriterSettings
  • WriteXXX Methods
  • XmlWriter States
  • Writing Elements
  • Writing Attributes
  • Writing Namespaces

5. The Document Object Model in .NET

  • Origins of the DOM
  • DOM Levels
  • DOM2 Structure
  • The XmlDocument Class
  • DOM Tree Model
  • DOM Interfaces
  • XmlDocument, XmlNode and XmlNodeList Classes
  • XmlElement and XmlText Classes
  • Finding Elements by Name
  • Walking the Child List
  • The XmlAttribute Class

6. Manipulating XML Information with the DOM

  • Creating and Modifying Documents
  • Modifying Elements
  • Error Handling
  • Managing Children
  • Cloning
  • Splitting Text and Normalizing
  • Modifying Attributes

7. XML Serialization

  • XmlSerializer
  • What Is Not Serialized
  • Writing and Reading XML
  • Customizing XML Serialization
  • XML Schema and XSD
  • Creating Classes from Schemas

8. XML and ADO.NET

  • Strong Coupling Between ADO.NET and XML
  • Rendering XML from a DataSet
  • Controlling XML Output
  • Reading XML into a DataSet
  • XML Schema and DataSets
  • Typed DataSets

9. XPath

  • Addressing XML Content
  • XPath in XSLT
  • Tree Structure
  • XPath Expressions
  • Context
  • Axis, Node Test, and Predicate
  • Abbreviations
  • XPath Functions
  • XPath and .NET
  • XPathNavigator
  • Editing with XPathNavigator

9. Introduction to XSLT

  • XSL and XSLT
  • Rule-Based Transformations
  • Templates
  • Producing Text, HTML, and XML
  • XslCompiledTransform

11. LINQ to XML

  • Language Integrated Query
  • Manipulating XML Documents in Memory with LINQ
  • LINQ Queries
  • Filtering, Ordering and Aggregation
  • Inserts, Deletes and Updates
  • LINQ Transformations

Appendix A. Zenith Courseware Case Study

Appendix B. Learning Resources

System Requirements

Required software is Visual Studio 2017, which includes LocalDB, a lightweight version of SQL Server. The free Visual Studio Community 2017 may be used. The operating system should be Windows 7sp1 or more recent. See the appropriate course Setup Guide for details.

A good minimal hardware profile for this course would have a 2 GHz or better CPU, 2 GB of RAM (4 GB recommended), and at least 10 GB of free disk space for tools installation and courseware.

Other courses to explore:

XML for Web Applications Using C#


Don’t forget to check out our monthly specials to save – Monthly Specials



Print Friendly, PDF & Email