Вопрос разработки веб-интерфейса и API MVC - новая модель представления или уже существующая? - PullRequest
0 голосов
/ 29 марта 2011

Недавно я столкнулся с требованием создания API для существующего веб-портала.Текущий веб-интерфейс останется без изменений, и API предоставит дополнительную функциональность для всех клиентов, которые хотели бы создавать приложения поверх основного приложения.

Веб-интерфейс довольно сложен и состоит из нескольких этапов.пошаговые формы для достижения желаемой функциональности.Например, некоторый объект домена разделен на набор представлений формы (моя модель представления) в стиле мастера.Проверка с точки зрения того, является ли введенное значение типом int, является ли данное электронное письмо действительным и т. Д., Происходит в модели представления.

Я планировал повторно использовать классы viewmodel для представления пользовательского ввода в API.

например, WebUI: public ActionResult Save (форма FormOne) {...} API: public ActionResult Save (String apiKey, FormOne form) {...}

Но это так сложно, т.е.иметь идеальное соответствие между моделью представления WebUI и моделью представления API.

Что представляет собой хороший дизайн в этом случае?

a) Создать новую модель представления для API?б) Используйте существующую модель представления, когда это возможно - создавайте новые классы, где это уместно; в) Что-то еще?

Спасибо, Y

1 Ответ

2 голосов
/ 29 марта 2011

Модель представления должна использоваться только одним представлением.

Не используйте их повторно, это только источник проблем.

Иногда мы хотим, чтобы нарушили DRY, чтобы уменьшить сцепление. Это один из тех времен.

Создание новых ViewModels для обслуживания вашего API.

...