2016-07-14 52 views
3

不可用Asp.Net核心標籤助手按照documentation在子目錄

@addTagHelper指令使其可查看代碼助手。在這種情況下,視圖文件是Views/_ViewImports.cshtml,默認情況下,該視圖文件由Views文件夾和子目錄中的所有視圖文件繼承;使標籤助手可用。

於是我進口標籤助手在Views\_ViewImports.cshtml

@using MyProject 
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers 

,他們在Views文件夾內的文件工作。

但是,在文件Views/Home/Index.cshtml中,我不支持Tag Helpers,也沒有將它們正確呈現爲鏈接。當我將_ViewImports.cshtml複製到文件夾Views/Home時,一切都按預期工作。

那麼我錯過了什麼?

更新

所以我缺少什麼?我的_ViewImports.cshtml已放入文件夾Views/Shared(d'oh)。將它移動到Views後,TagHelpers隨處可用。

+1

它適合我。如果您已經創建了自己的taghelper,那麼您必須在_ViewImports.cshtml文件中爲其創建條目。 – dotnetstep

+0

我想使用微軟定義的helpers,即'asp-controller'和'asp-action'。 – Thaoden

回答

4

我嘗試了一個空白的新的ASP.NET Core 1.0項目,並且在Views/Home/Index.cshtml視圖下添加它工作正常。這是你必須做的(請確保它是可用的)什麼:

添加到下面的包和工具部分到您的project.json文件:

"dependencies": { 
"Microsoft.NETCore.App": { 
    "version": "1.0.0", 
    "type": "platform" 
}, 
"Microsoft.AspNetCore.Diagnostics": "1.0.0", 
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", 
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0", 
"Microsoft.Extensions.Logging.Console": "1.0.0", 
"Microsoft.AspNetCore.Mvc": "1.0.0", 

"Microsoft.AspNetCore.Razor.Tools": { 
    "version": "1.0.0-preview2-final", 
    "type": "build" 
    } 
}, 

"tools": { 
    "Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final", 
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final" 
}, 

創建_ViewImports.cshtml文件下的視圖文件夾(您已經有)與您提到的內容。

注意:您可能需要重新啓動VS才能正常工作。

+0

是的,當我將文件放在正確的文件夾中時,它適用於我(請參閱我的問題的更新)。謝謝! – Thaoden