Following my last post on my ASP.NET MVC SEO-Framework I started looking at adding support also for ASP.NET Core MVC, with its superior Dependency Injection and Tag Helpers.
The previous post shows examples on how to use attributes to set SEO-specific values for Controller-Actions and in Views, which is also used in ASP.NET Core MVC. What is new to Core MVC is how you register the SEO-helper as a Service for Dependency Injection and use Tag Helpers instead of HTML Helpers.
To register the SEO-helper as a service for Dependency Injection you just need to use the framework's provided extension-method in the ConfigureServices
-method inside Startup.cs
:
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddSeoHelper();
}
}
These SEO-values can easily be accessed and rendered as HTML-tags inside Views
through provided Tag Helpers
:
<head>
<seo-title />
<seo-link-canonical />
<seo-meta-description />
<seo-meta-keywords />
<seo-meta-robots-index />
</head>
To access these Tag Helpers
you need to reference them in you _ViewImports.cshtml
:
@addTagHelper *, AspNetSeo.CoreMvc
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
See the README
-file on GitHub for the latest detailed information about this ASP.NET SEO-framework. Or try it out through Nuget by running Install-Package AspNetSeo.CoreMvc
or Install-Package AspNetSeo.Mvc
in your project. You can even follow the absolutely latest build on MyGet.