ASP.NET5で新しいWebAPI 2.0プロジェクトを開始しました。カスタムRoutePrefixAttributeクラスを作成しようとしましたが、このエラーが発生します。
The type or namespace name 'RoutePrefixAttribute' could not be found
(are you missing a using directive or an Assembly reference?) {ProjectName}.DNX Core 5.0
代わりに他のクラスを使用する必要がありますか?
実際、MVC6にはRoutePrefixAttribute
はありません。コントローラーに[Route]
属性を適用すると、ルートプレフィックスとして機能するようになります。
[Route("api/[controller]/[action]")]
public class ProductsController : Controller
{
[Route("{id:int}")]
public JsonResult Details(int id)
{
// ...
}
}
これはapi/Products/Details/42
と一致します。
また、Filip Wによる このブログ投稿 も参照してください。