Skip to content

maxtoroq/XCST-a

Repository files navigation

XCST web pages for ASP.NET Core

This repository provides integration of XCST with ASP.NET Core for web application development. It includes a set of extension instructions known as the "application extension" based on the HTML helpers from ASP.NET MVC 5.

See the project home for more information.

Build status Tests

Packages Built From This Repository

Package Description Targets
Xcst.AspNetCore XCST web pages for ASP.NET Core. .NET 7
Xcst.AspNetCore.Extension Extension instructions for XCST web pages. .NET 5

Related Repositories

Documentation

The documentation can be found at the project home.

About v2

v2 is the main branch for major version 2. See v1 for version 1 (no longer maintained).

Support for ASP.NET 4 (.NET Framework) was dropped in v2, focusing on ASP.NET Core going forward. As a consequence, the number of NuGet packages was reduced from six to two.

The runtime on v2 is much more integrated with ASP.NET Core. Functionality that was previously copied from ASP.NET MVC 5 such as model metadata, model binding, model validation, anti-forgery, etc. is now reused from ASP.NET Core.

The extension on v2 can generate code for runtime v1 or v2 (the default). This not only accounts for runtime API changes, but the extension instructions and attributes also. For example, if v2 removes an attribute, it will be available if you target v1. On the other hand, new instructions and attributes on v2 are not supported when targeting v1. To put is simply, the extension is backwards compatible, but you must explicitly target v1. You are therefore encouraged to use the v2 extension and XCST's v2 compiler to maintain your legacy v1 apps.

System Requirements

The release script (which creates the NuGet packages) and other utility scripts require PowerShell 5.1 or PowerShell Core.

The application extension schema is written in Relax NG and converted to XSD using Trang, which requires Java.