Piranha CMS - 创建一个新的MVC应用程序 - 破碎

时间:2015-02-27 16:33:07

标签: asp.net-mvc piranha-cms

我试图将Piranha CMS整合到现有的MVC5网络应用程序中。 我已经按照http://piranhacms.org/docs/introduction/getting-started中推荐的路线进行了操作,使用Nuget这一切都非常简单。 运行应用程序后,我收到一条消息,说明AutoMapper不在那里,所以通过Nuget添加它。到目前为止都很好。 再次运行并得到此错误:

"无法加载一个或多个请求的类型。检索LoaderExceptions属性以获取更多信息。"

这里是筹码:

  

[ReflectionTypeLoadException:无法加载一个或多个   要求的类型。检索LoaderExceptions属性以获取更多信息   信息]
  System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)+0
  System.Reflection.RuntimeModule.GetTypes()+ 4
  System.Reflection.Assembly.GetTypes()+70
  System.ComponentModel.Composition.Hosting.AssemblyCatalog.get_InnerCatalog()   +167 System.ComponentModel.Composition.Hosting.AssemblyCatalog.GetExports(ImportDefinition   定义)+11
  。System.ComponentModel.Composition.Hosting<> c__DisplayClass3.b__2(ComposablePartCatalog   目录)+17 System.Linq.d__14 2.MoveNext() +177 System.ComponentModel.Composition.Hosting.CatalogExportProvider.InternalGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition) +205
System.ComponentModel.Composition.Hosting.InnerCatalogExportProvider.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition) +14
System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition, IEnumerable
1&   出口)+39
  System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExports(ImportDefinition   定义,AtomicComposition atomicComposition,IEnumerable 1& exports) +23
System.ComponentModel.Composition.Hosting.CatalogExportProvider.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition) +61
System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition, IEnumerable
1&   出口)+39
  System.ComponentModel.Composition.Hosting.AggregateExportProvider.GetExportsCore(ImportDefinition   定义,AtomicComposition atomicComposition)+311
  System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition   定义,AtomicComposition atomicComposition,IEnumerable 1& exports) +39
System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExports(ImportDefinition definition, AtomicComposition atomicComposition, IEnumerable
1&   出口)+23
  System.ComponentModel.Composition.Hosting.CompositionContainer.GetExportsCore(ImportDefinition   定义,AtomicComposition atomicComposition)+156
  System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition   定义,AtomicComposition atomicComposition,IEnumerable 1& exports) +39
System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(ImportDefinition definition, AtomicComposition atomicComposition) +36
System.ComponentModel.Composition.Hosting.ImportEngine.TryGetExports(ExportProvider provider, ComposablePart part, ImportDefinition definition, AtomicComposition atomicComposition) +44
System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImportSubset(PartManager partManager, IEnumerable
1 import,AtomicComposition   atomicComposition)+155
  System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImportsStateMachine(PartManager   partManager,ComposablePart part)+439
  System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImports(PartManager   partManager,ComposablePart part,Boolean shouldTrackImports)+196
  System.ComponentModel.Composition.Hosting.ImportEngine.SatisfyImports(ComposablePart   部分)+107
  。System.ComponentModel.Composition.Hosting<> c__DisplayClass2.b__0()   +26 System.ComponentModel.Composition.Hosting.CompositionServices.TryInvoke(Action   行动)+33
  System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.Compose(CompositionBatch   批次)+841
  System.ComponentModel.Composition.Hosting.CompositionContainer.Compose(CompositionBatch   批次)+33
  System.ComponentModel.Composition.AttributedModelServices.ComposeParts(CompositionContainer中   container,Object [] attributesParts)+172
  Piranha.Application..ctor()in   C:\ PROJ \ GitHub的\食人鱼-2.2 \食人鱼\ Application.cs:105
  Piranha.Application..cctor()in   C:\ PROJ \ GitHub的\食人鱼-2.2 \食人鱼\ Application.cs:25

请特别注意堆栈的最后两行,Piranha.Application..ctor()在c:\ Proj \ GitHub \ Piranha-2.2 \ Piranha \ Application.cs:105    Piranha.Application..cctor()在c:\ Proj \ GitHub \ Piranha-2.2 \ Piranha \ Application.cs:25。 它无法在c:\ Proj \ GitHub \ Piranha-2.2中找到.cs文件?????

只是为了确认我不是在做一些愚蠢的事情,我已经按照步骤将它添加到一个空的MVC c#项目中,结果相同。

我做错了什么还是Nuget错了?

1 个答案:

答案 0 :(得分:1)

Piranha.Core 2.2.4缺少AutoMapper参考。更新到2.2.4.1,它应该工作!

修改

您看到的那些文件引用的原因是.pdb文件包含在二进制包中。编译软件包时,这些文件指向硬盘驱动器上的物理位置。您正在看到它们,因为您正在获得另一个异常(查看堆栈跟踪),VS正在尝试调试代码。

在Bin中为Piranha扩展扫描程序集时,MEF中会抛出加载器异常。这可能是由某些其他dll引起无法解析的引起的。其他人在过去与一些Telerik组件有类似的问题。您在应用程序中使用了哪些其他外部组件?

此致

哈坎