Tag 1.0.2
See the version list below for details.
dotnet add package Tag --version 1.0.2
NuGet\Install-Package Tag -Version 1.0.2
<PackageReference Include="Tag" Version="1.0.2" />
paket add Tag --version 1.0.2
#r "nuget: Tag, 1.0.2"
// Install Tag as a Cake Addin #addin nuget:?package=Tag&version=1.0.2 // Install Tag as a Cake Tool #tool nuget:?package=Tag&version=1.0.2
T·g
A simple C# generator for HTML/XML
https://www.nuget.org/packages/Tag
Why?
Sometimes you have a project where a lot of code is needed to output a little markup. For those projects, markup templating engines make things more difficult, and a lot of the time you end up doing string concatenation. T·g is a step up from string concatenation.
Usage
See the TagTests.cs
file for examples of every feature. Here are some overviews to get you started.
Basic usage
var tag = T.g("div", "class","glass")[
T.g("a", "href", "#")["Fish"],
T.g("br/")
];
Console.WriteLine(tag.ToString());
Outputs <div class="glass"><a href="#">Fish</a><br/></div>
Writing to a stream
var tag = T.g( . . . );
tag.StreamTo(myWritableStream, Encoding.UTF8);
if StreamTo
is called multiple times, it will write another copy of the tag tree.
Templating and injection pattern
var doc = HtmlDoc("Hello World", out var head, out var body);
body.Add(T.g("h1")["Hello, world"]);
body.Add(T.g("p")["This is a simple HTML page example"]);
return doc.ToString();
.
.
.
TagContent HtmlDoc(string title, out TagContent head, out TagContent body)
{
var html = T.g("html");
head = T.g("head")[
T.g("title")[title],
T.g("style").LoadFile("Styles/PageStyle.css")
]
];
body = T.g("body")[T.g("script").LoadFile("Scripts/PageScript.js")];
html.Add(head);
html.Add(body);
return html;
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
.NET Core | netcoreapp2.0 is compatible. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Framework | net46 is compatible. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
This package has no dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Tag:
Package | Downloads |
---|---|
Gasconade
A log message management system and exploration UI, in a similar vein to Swagger. Contains an expressive templating system. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Adding plain text filter