プロジェクト内のどのモデルもサポートする汎用Web APIを使用できますか?任意のモデルをサポートする汎用Web APIコントローラ
class BaseApiController<T> :ApiController
{
private IRepository<T> _repository;
// inject repository
public virtual IEnumerable<T> GetAll()
{
return _repository.GetAll();
}
public virtual T Get(int id)
{
return _repositry.Get(id);
}
public virtual void Post(T item)
{
_repository.Save(item);
}
// etc...
}
class FooApiController : BaseApiController<Foo>
{
//..
}
class BarApiController : BaseApiController<Bar>
{
//..
}
これは良いアプローチでしょうか?
すべての後、私はちょうどCRUDメソッドを繰り返しmは?この基本クラスを使って私の仕事をすることはできますか?
これはOKですか?あなたはこれをしますか?どんな良いアイデアですか?
こんにちは、これは古い質問ですが、どのように汎用アクションメソッドを呼び出すことができたか説明できますか?ルーティングルールだけでこれを達成できるようには見えません。私は大いに感謝します。 – Brett