2016-08-19 8 views
1

Я работаю над своей пользовательской CMS. У меня есть основное приложение и модули. Моя проблема в том, что всякий раз, когда я загружаю представление из своего модуля, представление не может найти модель, назначенную этому представлению.MVC 4 MEF View не может найти @Model с другой сборки

CS0246: тип или пространство имен имя «EAccounting» не может быть найден (вы пропали без вести с помощью директивы или ссылка на сборку?)

Вид этого модуля находится в ~/Modules/EAccounting/Views /. Я могу назвать контроллер модуля без проблем, и я могу найти вызвать вид из контроллера без проблем, но сам вид не может найти модель из загруженных сборок:

@model EAccounting.Models.Transaction

Это код который загружает сборки:

public class SafeDirectoryCatalog : ComposablePartCatalog 
{ 
    private readonly AggregateCatalog _catalog; 

    public SafeDirectoryCatalog(string directory) 
    { 
     var files = Directory.EnumerateFiles(directory, "*.dll", SearchOption.AllDirectories); 

     _catalog = new AggregateCatalog(); 

     foreach (var file in files) 
     { 
      try 
      { 
       var asmCat = new AssemblyCatalog(file); 

       //Force MEF to load the plugin and figure out if there are any exports 
       // good assemblies will not throw the RTLE exception and can be added to the catalog 
       if (asmCat.Parts.ToList().Count > 0) 
       { 
        _catalog.Catalogs.Add(asmCat); 
       } 
      } 
      catch (ReflectionTypeLoadException) 
      { 
      } 
      catch (BadImageFormatException) 
      { 
      } 
     } 
    } 
    public override IQueryable<ComposablePartDefinition> Parts 
    { 
     get { return _catalog.Parts; } 
    } 
} 

Я уверен, что это ничего плохого в загрузке сборки. Также, если я перемещаю свою сборку модуля DLL в мою основную папку bin (~/bin /), она отлично работает, поэтому проблема должна заключаться в том, что представление может выполнять поиск только в основной папке/bin.

Как настроить мою систему так, чтобы представление могло искать сборку из другой папки? Примечание: сборка загружается во время выполнения tho.

+0

У меня такая же проблема .. нашли ли вы решение? – marsop

ответ

 Смежные вопросы

  • Нет связанных вопросов^_^