JayData с WebAPI

Есть ли примеры использования JayData с WebAPI? Это не OData, а просто набор конечных точек:

/api/проекты /api/пользователи /api/что-то

Я просто ищу простое решение, чтобы передать мои данные webapi клиенту и отправить их обратно при изменении для обновления бэкэнда. Если есть другие инструменты, которые лучше работают с WebAPI, меня это устраивает.


person Poul K. Sørensen    schedule 05.11.2012    source источник
comment
Значит, вы не планируете добавлять какие-то сервисы метаданных?   -  person Peter Aron Zentai    schedule 05.11.2012
comment
Я не знаю. До сих пор я чувствую, что трачу время ни на что. Я вижу, как хороши метаданные, когда у вас большой проект и вы не хотите верстать объекты на клиенте. Возможно, мне просто нужен правильный инструмент для создания метаданных. Моя проблема с метаданными связана с тем, что я видел, она отображает dbcontext. Я хотел бы создать собственный WebAPI, а не просто позволить клиенту запрашивать dbcontext. 1) Могут быть поля, которые я не хочу отправлять клиенту.   -  person Poul K. Sørensen    schedule 05.11.2012


Ответы (2)


мы собираемся выпустить JayData ItemStore API, который позволит вам подключаться к конечным точкам OData без реальной службы метаданных OData, что идеально подходит для WebAPI.

Я пытаюсь представить вам пример здесь сегодня ...

ОБНОВЛЕНИЕ: Ну, прошел месяц, но, наконец, вот пример: WebAPI с JayData — 1-й сеанс

person Peter Aron Zentai    schedule 05.11.2012
comment
Звучит круто :) Я решил пока начать с breezejs, но я посмотрю, что вы придумаете. - person Poul K. Sørensen; 05.11.2012
comment
Позвольте мне сказать прямо: значит, вы в порядке, используя генератор метаданных WebAPI, который, как я полагаю, является частью BreezeJS? В этом случае мы круты. В следующий понедельник мы выпустим модуль совместимости, так что помимо прекрасного генератора метаданных BreezeJS вы сможете использовать полный набор магии JayData, например JSLQ. - person Peter Aron Zentai; 06.11.2012
comment
Я с нетерпением жду этого. Сегодня я провел несколько часов, копаясь в пакете Microsoft.Data.OData, и, по моему опыту, это было не просто несколько строк, чтобы запустить его, но похоже, что он был довольно настраиваемым. У BreezeJ действительно простая в настройке система на бэкэнде, но, насколько я знаю сейчас, непросто настроить, какие данные предоставлять клиентам. (Но мне пришло в голову, что я всегда могу определить новый DbContext, который отражает данные для разных контекстов. Я просмотрел ваш API ItemStore, он выглядит простым. Чего мне не хватает, так это нескольких простых примеров получения/редактирования/хранения на сервере. - person Poul K. Sørensen; 06.11.2012
comment
На самом деле именно так мы работаем с данными на стороне сервера, но с WCF Data Services. Поскольку мы используем codefirst, у нас могут быть разные модели для одной и той же базы данных. Один для автоматической публикации в Интернете, а другой для полного внутреннего доступа. Автоматическая публикация, если она сделана на правильной модели, не является оценочной — как раз наоборот: нам нужно только одно центральное место: EDMX для управления тем, какие поля выходят. Это довольно наглядно, и выбор полей ВСЕГДА сопряжен с риском ошибки. Также обратите внимание, что служба данных WCF + jaydata поддерживают операции службы: это методы, которые могут влиять на фактическую запрашиваемую информацию. - person Peter Aron Zentai; 06.11.2012
comment
и может действовать как виртуальная таблица или представление, очень похоже на то, как на самом деле работает WebAPI, но с дополнительным бонусом я могу иметь автоматический CRUD, если захочу, и я также могу полностью контролировать выполнение. - person Peter Aron Zentai; 06.11.2012
comment
Ждем примера :) - person jonperl; 06.12.2012
comment
На данный момент, чтобы выполнить полный CRUD, у нас есть зависимость от расширения Microsoft WebAPI OData, так что фактический формат проводки, который выходит из WebAPI, совместим с OData. Если вы хотите использовать только чистый WebAPI и ничего больше, вы сможете только создавать новые объекты и запрашивать вещи со всем потенциалом - на этом этапе обновление и удаление объекта требует настройки в маршрутизации. Какой подход вам интересен? Кстати, я делюсь чистым подходом WebAPI прямо сейчас - он должен быть готов к утру :) если ночь достаточно длинная. - person Peter Aron Zentai; 06.12.2012
comment
ну, на самом деле полные возможности crud и запросов теперь работают с контроллерами веб-API, созданными редактором по умолчанию. Не нужно вонючих метаданных. На этом этапе вы можете обновить с помощью PUT (без слияния, необходимо отправить полный экземпляр). Я заканчиваю некоторые модульные тесты — немного посплю, прежде чем сделать это доступным из CDN и блога JayData. - person Peter Aron Zentai; 07.12.2012
comment
А вот и он: jaydata .org/blog/how-to-use-jaydata-with-asp.net-web-api---i - person Peter Aron Zentai; 10.12.2012

В пакет веб-api odata добавлена ​​поддержка создания собственных метаданных $. установите пакет из Install-Package Microsoft.Data.OData.Contrib -Pre.

ODataModelBuilder может явно строить модель, а ODataConventionModelBuilder предоставляет более удобный способ построения соглашений на основе модели, таких как распознавание атрибутов DataMember.

Пожалуйста, проверьте блог и пример

person Hongye Sun    schedule 05.11.2012
comment
Я не вижу, где сообщение или пример посвящены тому, как создавать метаданные или как использовать информацию для повышения эффективности. - person Poul K. Sørensen; 06.11.2012