Я собираюсь объяснить это простым способом, и я надеюсь, что это будет полезно для вас.
1) Создать пустое консольное приложение.
2) Составьте ссылку на сервис любой публичной службы OData. То есть http://services.odata.org/northwind/northwind.svc/

После этого Visual Studio собирается добавить еще несколько ссылок сборки, как вы можете увидеть ниже

3) Напишите следующий код
с использованием системы ; используя System.Collections.Generic; используя System.Data.Services.Client; используя System.Linq; используя System.Text; с использованием System.Threading.Tasks;
namespace ConsoleApplication4
{
class Program
{
static DataServiceContext ctx = new DataServiceContext(new Uri("http://services.odata.org/northwind/northwind.svc/"));
static void Main(string[] args)
{
IEnumerable<ServiceReference1.Category> response =
ctx.Execute<ServiceReference1.Category>(new Uri("http://services.odata.org/northwind/northwind.svc/Categories"));
}
}
}
4) Установка точки останова в конце основного метода. А теперь отладочное приложение. Вы увидите список категорий.

5) Если OData разоблачили с разрешением реализовать все CRUD, то вы можете сделать это. И, конечно же, вы можете вернуть response
в ASP.NET MVC, но сначала вы должны преобразовать его в свой класс Model.
Возможно, вы сохраните статический DataServiceContext ctx = new DataServiceContext(new Uri("http://services.odata.org/northwind/northwind.svc/"));
в своем классе BaseController.
А также вы получите значение свойства, как это:

P.S. Взгляните на это видео http://www.youtube.com/watch?v=e07TzkQyops.