Я пытаюсь реализовать пользовательскую локальную службу на веб-странице MVC 2. У меня есть интерфейс IResourceDictionary, который предоставляет несколько методов для доступа к ресурсам по культуре. Это связано с тем, что я хочу избежать статических классов .Net-ресурсов.Дополнительная информация в ASP.Net MVC View
Проблема заключается в доступе к выбранному ресурсу IResourceDictionary из представлений. Я рассматривал использование приведенного ViewDataDictionary, создавая базовый контроллер, из которого все мои контроллеры наследуют, который добавляет мой IResourceDictionary в ViewData перед каждым действием.
Тогда я мог бы назвать мой словарь ресурс этот путь:
(ViewData["Resources"] as IResourceDictionary).GetEntry(params);
Следует признать, что это крайне многословным и некрасиво, особенно в встроенном коде как рекомендуется использовать в MVC. Прямо сейчас я склоняюсь к доступу к статическому классу
ResourceDictionary.GetEntry(params);
потому что он немного более изящный. Я также подумал о том, чтобы добавить его к моей типизированной модели для каждой страницы, которая кажется более надежной, чем добавление ее в ViewData.
Каков предпочтительный способ доступа к моему ResourceDictionary из представлений? Все мои взгляды будут использовать этот словарь.