2016-06-18 7 views
4

私はカスタムタグヘルパーを追加しようとしていましたが、_ViewImports.cshtmlの参照としてアセンブリを追加しようとしましたが、認識できません。カスタムタグヘルパーの追加

私は(_ViewImports.cshtml)これをやっている:

@using ProjectName.Web.Main 
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers 
@addTagHelper *, TagHelpers 

とも私が試した:

@addTagHelper *, ProjectName.Web.Main.TagHelpers 

私のタグヘルパーは以下の通りです:

using Microsoft.AspNetCore.Razor.TagHelpers; 
namespace ProjectName.Web.Main.TagHelpers 
{ 
    [HtmlTargetElement(Attributes="class")] 
    public class CssClassTagHelper : TagHelper 
    { 
     public override void Process(TagHelperContext context, TagHelperOutput output) 
     { 
      output.Attributes.Add(new TagHelperAttribute("class","testing")); 

     } 
    } 
} 

アプリを実行すると、次の例外が発生します。

Cannot resolve TagHelper containing assembly 'TagHelpers'. Error: Could not load file or assembly 'TagHelpers, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified. @addTagHelper *, TagHelpers

私はすでにそれを捜していますが、私はさまざまなdotnetcoreリリース間で混在した回答を得ていますが、これまでのところ解決策は見つかりませんでした。

私はRC2を使用しています。

ご意見、ご提案はありますか? Asp.Netコアドキュメントによれば

答えて

7

:すなわち

To expose all of the Tag Helpers in this project (which creates an assembly named AuthoringTagHelpers), you would use the following:

@using AuthoringTagHelpers 
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers 
@addTagHelper "*, AuthoringTagHelpers" 

addTagHelperの第2のパラメータは、アセンブリ名ではない名前空間です。

ですから_ViewImports.cshtmlで(私はあなたのプロジェクトの名前があることを想定)ProjectName.Web.Mainを使用する必要があります。

@using ProjectName.Web.Main 
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers 
@addTagHelper *, ProjectName.Web.Main 
+0

おかげで、私はそれを試してみるよ、あなたは –

+0

おかげで男を知ってみましょう!これは私のためにそれを解決しました。そのような問題を引き起こすような小さな事:-Dショット男! –

関連する問題