Có thể có api web chung chung để hỗ trợ bất kỳ mô hình nào trong dự án của bạn không?Bộ điều khiển Api Web chung để hỗ trợ bất kỳ mô hình nào
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>
{
//..
}
Đây có phải là cách tiếp cận tốt không?
Sau khi tất cả, tôi chỉ lặp lại các phương pháp CRUD? Tôi có thể sử dụng lớp cơ sở này để thực hiện công việc cho tôi không?
OK? bạn sẽ làm điều này? bất kỳ ý tưởng tốt hơn?
Xin chào, tôi biết đây là câu hỏi cũ, nhưng bạn có thể giải thích cách bạn quản lý để gọi các phương pháp hành động chung của mình không? Nó không giống như bạn có thể thực hiện điều này chỉ với quy tắc định tuyến. Tôi sẽ đánh giá cao về nó. – Brett