SQL Practice Blog – SQL Server, BizTalk und .NET Erfahrungen

Self Hosted ASP.NET Core: TagHelper doesn’t work

leave a comment »

I have implemented a simple TagHelper in a ASP.NET Core 2.0 Website, which replace the

My custom TimeTagHelper:

[HtmlTargetElement("time")]
public class TimeTagHelper : TagHelper
{
    public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output)
    {
        output.Content.SetHtmlContent($"<h1>{DateTime.Now.ToShortTimeString()}</h1>");
    }
}

If I start the website project directly, the TagHelper works without problems. Launched from the Console / Service, the

The solution: PreserveCompilationContext

These are the steps that helped me:

  1. Add the following ItemGroup definition to my Selhosted.Website.csproj
 <ItemGroup>
    <EmbeddedResource Include="wwwroot\**\*;Views\**\*;Areas\**\Views" />
  </ItemGroup>

 

  1. Add the PreserveCompilationContext property to the PropertyGroup in Selhosted.Website.csproj
 <PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>
    <AssemblyName>SelfHosted.Website</AssemblyName>
    <RootNamespace>SelfHosted.Website</RootNamespace>
    <TypeScriptToolsVersion>2.3</TypeScriptToolsVersion>
    <PreserveCompilationContext>true</PreserveCompilationContext>
  </PropertyGroup>

 

  1. Include the generated SelfHosted.Website.deps.json from the websites bin folder to the SelfHosted.Console project and set the Copy to Output Directory to Copy always.64fcb891c62c3a149c6ff350ebe0b1d3

You can find the sample project in my GitHub Repo: roeb/DotNetCoreSamples

Advertisements

Written by Robert Meyer

September 29, 2017 um 07:56

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: