タグヘルパーとしてのViewComponentは、ASP.NET Core 1.1(Invoking a view component as a Tag Helper
hereセクションを参照してください)に導入されました。しかし、以下のものは、ビューの一部だけTest for VC
を返します。 <vc:annual-orders>...</vc:annual-orders>
の部分が全く呼び出されないようです。タグヘルパーとしてのViewComponentが呼び出されない
ビュー\共有\コンポーネント\ AnnualOrders \ Default.cshtml:
@{
Layout = "";
}
<div>Test for VC</div>
<div>
<vc:annual-orders>
</vc:annual-orders>
</div>
にmyProj \ ViewComponents \ AnnualOrdersViewComponent.cs:
public class AnnualOrdersViewComponent : ViewComponent
{
private readonly OrdersContext _context;
public AnnualOrdersViewComponent(OrdersContext context)
{
_context = context;
}
public async Task<IViewComponentResult> InvokeAsync()
{
var lstOrders = _context.Where(t => t.orderType == "new");
return View(await lstOrders);
}
}
注:
- 私はASP.NET Core 1.1を使用していますタグヘルパーのないViewComponentsが正常に動作しています。
- また、このMSDNのofficial tutorialについては、
How to Invoke a View component as a tag helper
となりました。ここで、タグヘルパーのパスカルケースクラスとメソッドパラメータは、kebab caseに変換されています。