Modern DOM manipulation with C#

Florian Rappl, MVP Visual C#

AngleSharp

Modern DOM manipulation with C#

AngleSharp DOM Manipulation

Florian Rappl

Writer and consultant

  • Microsoft C# MVP and CodeProject MVP
  • Active contributions to open-source projects
  • Company workshops, talks and IT consulting

Languages and technologies

  • C#, JavaScript and C/C++
  • Full web stack (client and server)
  • High Performance and Embedded Computing

Agenda

  1. The DOM
  2. Parsing HTML
  3. Libraries in C#
  4. The AngleSharp project
  5. Beyond static HTML
  6. More demos
DOM

What is the DOM?

Specifications

Interfaces

Behavior

Common denominator

Parsing HTML

Common pitfalls

Error handling

Special rules

Encoding

Libraries .NET

HTML Agility Pack

CsQuery

AngleSharp

Our choice

AngleSharp Logo

AngleSharp project details

Architecture

Principles

Performance

Performance comparison

AngleSharp Parsing Time

Jamie Treworgy
The .NET world has definitely longed for a comprehensive functional DOM model, which is something I never had the energy to do with my own project!

Jamie Treworgy
Created CsQuery

Extensions

Extension libraries

AngleSharp Extensions

CSSOM

AngleSharp and CSS

AngleSharp HTML CSS

Beyond Static HTML

DOM events

Interactivity

AngleSharp Parsing Interactivity

General events

Scripting

Abilities

Demos

Submitting forms

Frontend testing

Summary

  • AngleSharp is universal
  • AngleSharp is standard driven
  • AngleSharp is flexible
  • AngleSharp is fast
  • AngleSharp is fun

Thanks for your attention

  • Feel free to contact me