Sidio.OpenGraph
2.0.0
Prefix Reserved
dotnet add package Sidio.OpenGraph --version 2.0.0
NuGet\Install-Package Sidio.OpenGraph -Version 2.0.0
<PackageReference Include="Sidio.OpenGraph" Version="2.0.0" />
<PackageVersion Include="Sidio.OpenGraph" Version="2.0.0" />
<PackageReference Include="Sidio.OpenGraph" />
paket add Sidio.OpenGraph --version 2.0.0
#r "nuget: Sidio.OpenGraph, 2.0.0"
#:package Sidio.OpenGraph@2.0.0
#addin nuget:?package=Sidio.OpenGraph&version=2.0.0
#tool nuget:?package=Sidio.OpenGraph&version=2.0.0
Sidio.OpenGraph
Sidio.OpenGraph is a .NET library for creating OpenGraph tags. Both .NET Standard 2.0 and .NET 8+ are supported.
Sidio.OpenGraph | Sidio.OpenGraph.AspNetCore | |
---|---|---|
NuGet | ||
Requirements | .NET Standard 2.0 | .NET 8+, AspNetCore |
ASP .NET Core support
Sidio.OpenGraph.AspNetCore provides the same functionality as Sidio.OpenGraph, but it has some helper functions to make it easier to use in an ASP.NET Core application. This library can be used in .NET 8 or higher applications only.
Installation
Get this package on NuGet:
Usage
Dependency injection
Dependency injection is recommended over creating instances of OpenGraphBuilder
directly. The
AddOpenGraph
extension method on IServiceCollection
registers the following services:
IOpenGraphBuilderFactory
: factory for creatingOpenGraphBuilder
instances.IObjectPoolService<OpenGraphBuilder>
: object pool forOpenGraphBuilder
instances.
services.AddOpenGraph();
Example:
public class MyClass
{
private readonly IOpenGraphBuilderFactory _factory;
private readonly IObjectPoolService<OpenGraphBuilder> _pool;
// use either the factory or the object pool. For demonstration purposes
// they are both included here.
public MyClass(IOpenGraphBuilderFactory factory, IObjectPoolService<OpenGraphBuilder> pool)
{
_factory = factory;
_pool = pool;
}
// with DI using the factory
public void Example1()
{
var builder = _factory.CreateBuilder();
builder.Add(new OpenGraphMetaTag("type", "example"));
builder.Add("tag2", tag2);
var openGraph = builder.Build();
}
// with DI using an object pool
public void Example2()
{
using var borrowedBuilder = _pool.Borrow();
borrowedBuilder.Instance.Add(new OpenGraphMetaTag("type", "example"));
borrowedBuilder.Instance.Add("tag2", tag2);
var openGraph = builder.Instance.Build();
}
// without DI, not recommended
public void Example3()
{
var builder = new OpenGraphBuilder();
builder.Add(new OpenGraphMetaTag("tag1", tag1));
builder.Add("tag2", tag2);
// adding a custom tag with a custom namespace
builder.Add("mycustomtag", customTag, new OpenGraphNamespace("ab", "https://example.com/ns#"));
var openGraph = builder.Build();
}
}
Asp.Net Core
Controller:
// the builder pattern
public IActionResult Example1()
{
this.SetOpenGraph(builder =>
{
builder.Add("title", title);
});
return View();
}
// the function with common tags
public IActionResult Example2()
{
this.SetOpenGraph("Home", "website", "https://example.com/image.jpg", "https://example.com/");
return View();
}
Register tag helper (usually in _ViewImports.cshtml
):
@addTagHelper *, Sidio.OpenGraph.AspNetCore
View (e.g. in _Layout.cshtml
):
<html prefix="@Html.GetOpenGraphPrefixAttributeValue()">
<head>
<open-graph />
</head>
References
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 is compatible. 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 is compatible. 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. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.Bcl.HashCode (>= 6.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.8)
- Sidio.ObjectPool (>= 1.2.0)
-
net8.0
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.8)
- Sidio.ObjectPool (>= 1.2.0)
-
net9.0
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.8)
- Sidio.ObjectPool (>= 1.2.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Sidio.OpenGraph:
Package | Downloads |
---|---|
Sidio.OpenGraph.AspNetCore
Sidio.OpenGraph.AspNetCore is a .NET library for creating Open Graph tags in ASP.NET Core applications. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated | |
---|---|---|---|
2.0.0 | 0 | 9/5/2025 | |
1.3.0 | 67 | 8/23/2025 | |
1.2.7 | 109 | 8/22/2025 | |
1.2.6 | 132 | 8/19/2025 | |
1.2.5 | 175 | 6/2/2025 | |
1.2.4 | 172 | 5/1/2025 | |
1.2.3 | 182 | 4/1/2025 | |
1.2.2 | 135 | 3/1/2025 | |
1.2.1 | 139 | 2/1/2025 | |
1.2.0 | 191 | 11/13/2024 | |
1.1.2 | 237 | 10/14/2024 | |
1.1.1 | 264 | 8/19/2024 | |
1.1.0 | 247 | 7/25/2024 | |
1.0.1 | 224 | 7/24/2024 | |
1.0.0 | 237 | 7/21/2024 |