sebnilsson - AspNetSeo.CoreMvc 0.8.0
Helpers for handling the SEO-data for ASP.NET Core MVC web-applications
PM> Install-Package AspNetSeo.CoreMvc -Version 0.8.0 -Source https://www.myget.org/F/sebnilsson/api/v3/index.json
> nuget.exe install AspNetSeo.CoreMvc -Version 0.8.0 -Source https://www.myget.org/F/sebnilsson/api/v3/index.json
> dotnet add package AspNetSeo.CoreMvc --version 0.8.0 --source https://www.myget.org/F/sebnilsson/api/v3/index.json
source https://www.myget.org/F/sebnilsson/api/v3/index.json
nuget AspNetSeo.CoreMvc ~> 0.8.0
Copy to clipboard
> choco install AspNetSeo.CoreMvc --version 0.8.0 --source https://www.myget.org/F/sebnilsson/api/v2
Import-Module PowerShellGet
Register-PSRepository -Name "sebnilsson" -SourceLocation "https://www.myget.org/F/sebnilsson/api/v2"
Install-Module -Name "AspNetSeo.CoreMvc" -RequiredVersion "0.8.0" -Repository "sebnilsson"
Copy to clipboard
ASP.NET SEO
Helpers for handling the SEO-data for ASP.NET web-applications.
Provides a SeoHelper-class which is easily accessible in Controllers, Views and through ActionFilterAttributes.
SeoHelper
Properties
The SeoHelper-class exposes multiple properties to get or set multiple SEO-related data:
LinkCanonical: Gets or sets the canonical link for web-page.SiteUrl: Gets or sets the main URL for web-site. Used as base for the canonical link.
MetaDescription: Gets or sets the meta-description for web-page.MetaKeywords: Gets or sets the meta-keywords for web-page.MetaRobots: Gets or sets meta-robots instructions web-page.OgAudio: Gets or sets the open graph audio URL for web-page.OgDescription: Gets or sets the open graph description for web-page. Falls back on value inMetaDescription.OgDeterminer: Gets or sets the open graph determiner for web-page.OgImage: Gets or sets the open graph image for web-page.OgLocale: Gets or sets the open graph locale for web-page.OgLocaleAlternates: Gets or sets the open graph alternate locales for web-page.OgSiteName: Gets or sets the open graph site-name for web-page. Falls back on value inSiteName.OgTitle: Gets or sets the open graph title for web-page. Falls back on value inPageTitle.OgType: Gets or sets the open graph type for web-page.OgUrl: Gets or sets the open graph URL for web-page. Falls back on value inLinkCanonical.OgVideo: Gets or sets the open graph video URL for web-page.PageTitle: Gets or sets the title for a web-page.SiteName: Gets or sets the name for the web-site. Used as base forDocumentTitle.
DocumentTitle: Gets the document-title for a web-page. CombinesPageTitleandSiteName.DocumentTitleFormat: Gets or sets the format for the document-title. Default value is{0} - {1}, where{0}is the value fromPageTitleand{1}is the value fromSiteName.
Methods
SetCustomMeta(string key, string value, CustomMetaAttributeKey? attribute = null): Add any custom meta-tag. Keys starting with known prefixes such asog:orfb:default to thepropertyattribute. Use theattributeparameter to explicitly choosenameorproperty.SetMetaRobots(bool index, bool follow): Specify the instructions for robots. Updates the value forMetaRobots.
Notes
LinkCanonical can be set as absolute URL (https://example.com/section/page.html),
as a relative URL (/section/page.html) or using ASP.NET's app-relative URL-format (~/section.page.html).
Relative URLs will automatically get converted to absolute URLs, either from provided SiteUrl
or from the base of the requested URL.
ActionFilterAttributes
The properties exposed by the SeoHelper-class all have corresponding
action-filter-attributes are available for Controllers and Controller-actions.
For example, [PageTitle] can be used for an action, if no logic is needed for the value,
while [SiteName] can be used for a controller. Using another [SiteName]-attribute on
an action will override the one used on the controller.
Examples of attribute-usage:
[SiteName("Website name")]
[SiteUrl("https://production-url.co/")]
public class InfoController : SeoController
{
[PageTitle("Listing items")]
[MetaDescription("List of the company's product-items")]
public ActionResult List()
{
var list = GetList();
if (list.Any())
{
Seo.PageTitle += $" (Total: {list.Count})";
Seo.LinkCanonical = "~/pages/list.html";
}
else
{
Seo.SetMetaRobots(index: false, follow: true);
}
return View(model);
}
}
ASP.NET Core MVC
Configuration
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();
}
}
Accessing the SeoHelper-class
With the configured Dependency Injection you can access the SeoHelper-class through constructor-injection or
by accessing the RequestServices-object
in the HttpContext.
The framework provides an extension-method for IServiceProvider for getting the SeoHelper-instance:
public IActionResult Edit()
{
var seoHelper = HttpContext.RequestServices.GetSeoHelper();
// ...
}
Tag Helpers
Tag Helpers are available to render the values set through the SeoHelper-class.
They also expose attributes to override or set the values on the fly in the markup.
Examples: <document-title /> renders the combined PageTitle and SiteName.
<link-canonical /> renders the canonical URL for the page.
<og-url /> renders the set URL for the page and falls back to value used in <link-canonical />.
<seo-tags /> renders all supported SEO tags at once.
Individual tags will not be rendered if there is no valid data provided for them,
either through the SeoHelper-class or exposed attributes.
Setting default values
To set the webb-application’s default base-title and default base canonical link, which can be overridden if needed, the configuration during registering the service for Dependency Injection can be used:
public void ConfigureServices(IServiceCollection services)
{
// ...
services.AddSeoHelper(
siteName: "Website name",
siteUrl: "https://production-url.co/");
}
ASP.NET MVC
Support for classic ASP.NET MVC is deprecated.
Ownerssebnilsson |
AuthorsSebastian Nilsson |
Project URLhttps://github.com/sebnilsson/AspNetSeo |
LicenseUnknown |
Info1326 total downloads |
| 96 downloads for version 0.8.0 |
| Download (8.61 KB) |
| Found on the current feed only |
Package history
| Version | Size | Last updated | Downloads | Mirrored? | |||
|---|---|---|---|---|---|---|---|
|
|
1.0.1 | 10.37 KB | Thu, 13 Jun 2019 16:04:42 GMT | 82 |
|
||
|
|
1.0.0 | 10.36 KB | Thu, 13 Jun 2019 15:59:20 GMT | 84 |
|
||
|
|
0.8.6.1 | 10.02 KB | Tue, 15 Jan 2019 11:16:29 GMT | 71 |
|
||
|
|
0.8.6 | 9.9 KB | Tue, 15 Jan 2019 09:15:14 GMT | 84 |
|
||
|
|
0.8.5 | 9.85 KB | Mon, 14 Jan 2019 16:00:08 GMT | 68 |
|
||
|
|
0.8.1-CI00025 | 8.87 KB | Thu, 18 May 2017 17:27:02 GMT | 66 |
|
||
|
|
0.8.1-CI00024 | 8.87 KB | Thu, 18 May 2017 17:02:54 GMT | 68 |
|
||
|
|
0.8.1-CI00023 | 8.86 KB | Thu, 18 May 2017 16:47:21 GMT | 84 |
|
||
|
|
0.8.1-CI00022 | 8.84 KB | Thu, 18 May 2017 16:27:19 GMT | 76 |
|
||
|
|
0.8.0 | 8.61 KB | Fri, 12 May 2017 15:10:24 GMT | 96 |
|
||
|
|
0.8.0-CI00021 | 8.84 KB | Thu, 18 May 2017 16:20:50 GMT | 80 |
|
||
|
|
0.8.0-CI00020 | 8.84 KB | Thu, 18 May 2017 16:11:02 GMT | 78 |
|
||
|
|
0.8.0-CI00019 | 8.84 KB | Thu, 18 May 2017 16:03:40 GMT | 87 |
|
||
|
|
0.8.0-CI00018 | 8.84 KB | Thu, 18 May 2017 15:57:45 GMT | 78 |
|
||
|
|
0.8.0-CI00017 | 8.76 KB | Thu, 18 May 2017 15:30:32 GMT | 76 |
|
||
|
|
0.8.0-CI00016 | 8.58 KB | Fri, 12 May 2017 15:16:34 GMT | 77 |
|
||
|
|
0.8.0-CI00015 | 8.58 KB | Fri, 12 May 2017 13:35:49 GMT | 71 |
|