Модели повторяются как для веб-приложения, так и для веб-API.

Я занят созданием веб-приложения ASP .Net MVC 1.1. Это будет сервер в качестве внешнего интерфейса. Я также создаю веб-API ASP .Net MVC 1.1. Это будет служить серверной частью веб-приложения, а также приложения для телефона, которое разрабатывает коллега.

Мой вопрос в том, что веб-приложение и веб-API используют одни и те же модели. Например, в автосалоне веб-приложение может иметь форму для добавления нового автомобиля. Пользователь заполнит все поля формы и нажмет «Отправить». Затем веб-приложение выполнит HTTP-запрос POST к веб-API, передав эту модель автомобиля контроллеру веб-API, который получит модель автомобиля в качестве параметра. Таким образом, в этом случае и веб-приложение, и веб-API будут иметь копию модели автомобиля. Каков правильный способ справиться с этим? Нужно ли иметь модель автомобиля в папке «Модели» как моего проекта веб-приложения, так и моего проекта веб-API в решении «Автосалон»? И если мне нужно добавить поле (например, пробег), я бы добавил его в обе модели (а также в базу данных и в форму HTML)? Нет возможности поделиться моделями?

Или, может быть, я надеюсь, что моя логика неверна? Я не знаю... Я просто хочу убедиться, что делаю все правильно - я очень новичок в ASP .Net (и в веб-разработке в целом).

Спасибо


person Fabricio Rodriguez    schedule 12.05.2017    source источник


Ответы (1)


Я бы предложил:

  1. Веб-API Asp.net (Rest API)

    • Создайте свои модели с помощью EF и Ado.net (он автоматически создаст модель для каждой таблицы базы данных).

    • Добавьте API-контроллеры для ваших моделей

    • Настройте свой API и опубликуйте его, например. ИИС
  2. Веб-приложение Asp.net и приложение для телефона

    • Create your wep-app & phone app and send HTTP-Requests to the API

RestAPI знает модели, веб-приложение и телефонное приложение должны знать только то, что отправлять в запросе.

введите здесь описание изображения

Надеюсь, это поможет.

person Schauby    schedule 12.05.2017