У меня есть такая структура
Проект WebUI - контроллеры, представления Framework, репозитории проекта, сервисный уровень и домен
Так что теперь у меня есть 3 метода / класса
- Open Id / Open auth
Сначала я подумал, что я бы поместил всю свою логику в сервисный уровень в моем проекте фреймворка (подготовка запроса, проверка ответа и т. Д. Были бы на этом уровне).
Так что теперь я использую библиотеку dotnetopenauth, и потому что мне нужно использовать метод AsActionResult в моем контроллере (я возвращаю «OutgoingWebResponse» из моего сервисного уровня, так как я не хочу ничего MVC в моих сервисных слоях)
Это заставило меня задуматься, когда я решил не иметь ничего MVC на своем уровне обслуживания.Как я прочитал, у вашего сервисного уровня, который содержит вашу бизнес-логику, не должно быть никаких зависимостей, таких как ссылки MVC, потому что если вы переходите в приложение Windows Phone, вам не следует использовать MVC.
Ваш бизнес-уровень должен бытьсвоего рода подключи и играй в любое приложение.
Так что теперь я не уверен, стоит ли мне перемещать то, что я написал для openId, в папку с моими моделями в моем проекте MVC просто по вышеуказанным причинам.Поскольку, если я перейду к приложению Windows Phone или приложению форм, я не буду использовать dotnetopenauth, так как не думаю, что он поддерживается в приложениях такого типа.
Мой второй вариантс аутентификацией форм.Опять же по тем же причинам, что и выше.Должно ли это пойти в папке с моими моделями в качестве локального слоя обслуживания / репо (то есть в том же файле проекта).
Я использую nhibernate, беглый nhiberate и ninject.Все мои репозитории находятся в моем каркасном проекте.Так что у меня есть, конечно, все ссылки там.Но так как я использую ninject для ioc, у меня есть все ссылки в моем проекте webui.
Я понятия не имею, можно ли изменить эту ссылку, чтобы избавиться от этих ссылок из моегоWebUI.Я думаю нет, потому что они не могут иметь свой ioc в моем webui, где я думаю, что он должен идти.