Реализация OData для ASP.NET MVC - PullRequest
3 голосов
/ 08 октября 2010

У нас есть довольно прямолинейное бизнес-приложение, реализованное с ASP.NET MVC2, и у нас есть новое требование, чтобы иметь возможность обмениваться нашими данными с другими частями бизнеса, включая SharePoint 2010, Ruby и Python.

Я бы хотел использовать OData в качестве транспортного механизма (в отличие от SOAP), используя наше существующее приложение MVC. Я изо всех сил пытаюсь найти кого-нибудь, кто упоминает реализацию поставщика OData для MVC.

Можете ли вы предложить мне, как я мог бы запустить свой собственный провайдер OData ASP.NET MVC, или указать мне куда-нибудь, где могло уже начаться что-то подобное?

Ответы [ 2 ]

1 голос
/ 08 октября 2010

Вы можете проверить это

https://meta.stackexchange.com/questions/43991/implement-odata-api-for-stackoverflow

реализовано здесь https://data.stackexchange.com

0 голосов
/ 26 июля 2013

OData с MVC чрезвычайно легко получить и использовать с MVC Web API.

например. Ваш контроллер OData будет выглядеть так:

public class ProductController : EntitySetController<Product, int>
{
    private readonly IUnitOfWork _unitOfWork;

    public ProductController(IUnitOfWork unitOfWork)
    {
        _unitOfWork = unitOfWork;
    }

    public override IQueryable<Product> Get()
    {
        return _unitOfWork.Repository<Product>().Query().Get();
    }

    protected override Product GetEntityByKey(int key)
    {
        return _unitOfWork.Repository<Product>().FindById(key);
    }

    protected override Product UpdateEntity(int key, Product update)
    {
        update.State = ObjectState.Modified;
        _unitOfWork.Repository<Product>().Update(update);
        _unitOfWork.Save();
        return update;
    }

    public override void Delete([FromODataUri] int key)
    {
        _unitOfWork.Repository<Product>().Delete(key);
        _unitOfWork.Save();
    }

    protected override void Dispose(bool disposing)
    {
        _unitOfWork.Dispose();
        base.Dispose(disposing);
    }
}

Подробное описание можно посмотреть здесь: http://blog.longle.net/2013/06/18/mvc-4-web-api-odata-entity-framework-kendo-ui-grid-datasource-with-mvvm/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...