【问题标题】:Sitecore package designer "Unable to load one or more of the requested types"Sitecore 包设计器“无法加载一种或多种请求的类型”
【发布时间】:2014-09-19 19:35:09
【问题描述】:

我正在运行我的 Sitecore (Sitecore.NET 6.5.0 (rev. 120706)) 网站的本地版本,并且我有这些 CMS 更改,我想与包设计器一起打包。当我转到包设计器时,我收到以下错误消息:

“/”应用程序中的服务器错误。

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

描述:执行过程中发生了未处理的异常 当前的网络请求。请查看堆栈跟踪以获取更多信息 有关错误的信息以及它在代码中的来源。

异常详细信息:System.Reflection.ReflectionTypeLoadException: 无法加载一种或多种请求的类型。检索 LoaderExceptions 属性以获取更多信息。

来源错误:

在执行过程中产生了一个未处理的异常 当前的网络请求。有关原产地和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。

堆栈跟踪:

[ReflectionTypeLoadException: 无法加载一个或多个 请求的类型。检索 LoaderExceptions 属性以获取更多信息 信息。]
System.Reflection.RuntimeModule.GetTypes(RuntimeModule 模块) +0
System.Reflection.RuntimeModule.GetTypes() +9
System.Reflection.Assembly.GetTypes() +143
Sitecore.Shell.Applications.Install.Commands.Commands.Init() +63

[TypeInitializationException: 的类型初始化器 'Sitecore.Shell.Applications.Install.Commands.Commands' 抛出了一个 例外。]
Sitecore.Shell.Applications.Install.Commands.Commands.Init() +0

[TargetInvocationException: 异常已被目标抛出 调用。] System.RuntimeMethodHandle.InvokeMethod(Object 目标、Object[] 参数、签名 sig、布尔构造函数)+0
System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr、Binder binder、Object[] 参数、CultureInfo 文化) +639 Sitecore.Reflection.ReflectionUtil.CreateObject(类型类型,Object[] 参数)+110
Sitecore.Web.UI.HtmlControls.CodeBeside.CreateCodeBeside(字符串类型) +35 Sitecore.Web.UI.HtmlControls.CodeBeside.OnInit(EventArgs e) +114 System.Web.UI.Control.InitRecursive(控件命名容器) +186 System.Web.UI.Control.InitRecursive(控件命名容器) +421 系统.Web.UI.Control.InitRecursive(控件命名容器)+421 System.Web.UI.Control.InitRecursive(控件命名容器)+421 System.Web.UI.Control.InitRecursive(控件命名容器)+421 System.Web.UI。 Control.InitRecursive(控件命名容器)+421 System.Web.UI.Control.InitRecursive(控件命名容器)+421 System.Web.UI.Control.InitRecursive(控件命名容器)+421 System.Web.UI.Control.InitRecursive(控件命名容器)+421 System.Web.UI.Control.AddedControl(控制控件,Int32 索引)+189 Sitecore.Shell.DefaultPage.OnInit(EventArgs e)+197
System.Web.UI.Control.InitRecursive(控件命名容器) +186
System.Web.UI.Page.ProcessRequestMain(布尔值 includeStagesBeforeAsyncPoint,布尔型 includeStagesAfterAsyncPoint) +2098

版本信息:Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.0.30319.34009

我试图弄清楚这个错误是什么,我的日志文件并没有真正帮助我。我与我的现场网站(完美运行包设计器)进行了比较,它们几乎相同。

我应该寻找什么来找到这个问题的原因?

【问题讨论】:

    标签: asp.net visual-studio sitecore sitecore6


    【解决方案1】:

    它实际上可能是引用时不匹配的 dll 和清单条目的组合。 也可以是 Newtonsoft.Json.dll。

    请转到您应用根级别的 web.config。

    及以下

    <dependentAssembly>
           <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
           <bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="4.5.0.0" />
    </dependentAssembly>
    
    </runtime>

    解决所有问题

    【讨论】:

      【解决方案2】:

      似乎有一个命令引用了您的设置中缺少的程序集。将您的本地程序集与您的实时站点的程序集进行比较,并检查您的 /App_Config/Commands.config 是否有自定义命令或对自定义程序集的引用。

      【讨论】:

      • 当我比较这两个文件时,我发现它们是相同的。我尝试删除所有命令并得到相同的结果。我会将该配置文件的内容粘贴到我原来的帖子中。谢谢
      • 确保您还比较了您的 bin 文件夹...非常确定缺少程序集
      • 我无法发布完整的配置,它太大了。但它看起来都很干净,并且相同的配置可以在线正确运行。基本上我的整个 App_Config 文件夹是相同的(通过 BeyondCompare 运行)。 Bin 文件夹也几乎相同,我有一些区别:System.Net.Http.xml、System.Net.Http.dll、System.Data.SqlServerCe.dll、Newtonsoft.Json.xml、Newtonsoft.Json.dll、 Microsoft.Web.Infrastructure.xml、HedgehogDevelopment.SitecoreProject.Service.dll 和 AjaxMin.dll。您认为这些中的任何一个都会有所作为吗?
      • 我一个一个地移动了每个 DLL,似乎是我的 nuget 包更新了我的 Newtonsoft.Json.dll 导致了这个问题。我想我会一起停止使用 Nuget 哈哈 :) 谢谢马克!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-02
      • 1970-01-01
      • 1970-01-01
      • 2021-06-23
      相关资源
      最近更新 更多