33

mvc 4 ベータ版の新しい wep API をいじり、既存の mvc サイトにいくつかの新しい API コントローラーを追加しています。問題は、Web API コントローラーに既存のコントローラーと同じ名前を付けられないことです。今のところ、ProductApiController のような名前を付けていますが、それはあまり安っぽいものではありません。これらの新しいコントローラーを既存の mvc サイトに追加するときに、これらの新しいコントローラーに名前を付けるための適切な戦略は何ですか?

4

1 に答える 1

54

問題は、Web API コントローラーに既存のコントローラーと同じ名前を付けられないことです。

API コントローラーを既存のコントローラーと同じ名前にすることができます。コンパイラを満足させるために、それらを別の名前空間に配置するだけです。

例:

namespace MyAppName.Controllers
{
    public class ProductsController: Controller
    {
        public ActionResult Index()
        {
            var products = productsRepository.GetProducts();
            return View(products);
        }
    }
}

および API コントローラー:

namespace MyAppName.Controllers.Api
{
    public class ProductsController: ApiController
    {
        public IEnumerable<Product> Get()
        {
            return productsRepository.GetProducts();
        }
    }
}

そして、あなたが持っている:/productsそして/api/productsそれぞれで作業する。

于 2012-02-19T22:20:34.897 に答える