Установка: (с помощью Asp.Net MVC 2 RC, Entity Framework, SQL Server, VS2008)Asp.Net MVC - Общие данные по всем контроллерам
Мой приятель и я работаю над проектом, который будет иметь разные домены, указывающие на него. Мы хотим получить домен (веб-сайт) из Запроса и использовать его для управления данными. Данные веб-сайта должны быть частью всех контроллеров.
Ex. Данные для домена1.website.com будут быть разными, чем данные для домена domain2.website.com, и те будут , отличные от данных для website2.com. Внешний вид сайта тот же для все это, но данные разные.
Я установил BaseController, из которого все мои другие контроллеры унаследованы. Но мне это не нравится.
BaseController:
public class BaseController : Controller
{
private Website _website;
private readonly IWebsiteRepository _websiteRepository;
public BaseController(IWebsiteRepository websiteRepository)
{
_websiteRepository = websiteRepository;
}
public Website CurrentWebsite { get; }
}
Проблема в том, что я теперь должен пройти IWebsiteRepository к основанию каждого из моих контроллеров:
public class BioController : BaseController
{
private readonly IBiographyRepository _bioRepository;
public BioController(IBiographyRepository bioRepository, IWebsiteRepository websiteRepository)
: base(websiteRepository)
{
_bioRepository = bioRepository;
}
}
вот мои вопросы
- Есть ли лучший способ обработки нескольких доменов bei ng указал на один проект и фильтрацию данных?
- Есть ли лучший способ иметь объект Веб-сайта в каждом контроллере?
UPDATE
К сожалению, я забыл добавить, что в. Я уже использую IoC (структура карты). Мой вопрос больше о строках:
- Должен ли я заменить BaseController чем-то еще? ActionFilter?
- Есть ли способ настроить его, чтобы мне не пришлось передавать IWebsiteRepository базовому классу?
- Есть ли лучший способ обработки доменов, используемых для данных?