当我安装Sitecore更新包7.2时,Object reference not set to an instance of an object error
显示并且未安装包:
' /'中的服务器错误应用。对象引用未设置为 对象的实例。描述:发生了未处理的异常 在执行当前Web请求期间。请查看 堆栈跟踪以获取有关错误及其位置的更多信息 起源于代码。
异常详细信息:System.NullReferenceException:不是对象引用 设置为对象的实例。
来源错误:
执行期间生成了未处理的异常 当前的网络请求。有关的来源和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。
堆栈追踪:
[NullReferenceException:对象引用未设置为的实例 object。] Sitecore.Update.InstallUpdatePackage.WriteMessage(Object message,Exception ex,Level level,Boolean isCommandText)+501
Sitecore.Update.InstallUpdatePackage.WriteSupportInstructions(字符串 historyPath,exception ex)+807
Sitecore.Update.InstallUpdatePackage.OnLoad(EventArgs e)+1055
System.Web.UI.Control.LoadRecursive()+70
System.Web.UI.Page.ProcessRequestMain(布尔 includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint) 3177
请同时查看以下详细信息:
异常详细信息:System.Exception:无法执行安装后 动作,因为找不到安装数据。在 Sitecore.Update.InstallUpdatePackage.ExecutePostStep(MetadataView 在Sitecore.Update.InstallUpdatePackage.OnLoad(EventArgs e)
答案 0 :(得分:1)
这是一个非常常见的错误,可能因各种原因而发生。根本原因实际上取决于您遇到的具体情况。
如果您正在使用API或调用可能返回null的方法,那么优雅地处理此问题非常重要。可以修改上面的主要方法,以便用户永远不会看到NullReferenceException:
static void Main(string[] args)
{
var exampleClass = new ExampleClass();
var returnedClass = exampleClass.ExampleMethod();
if (returnedClass == null)
{
//throw a meaningful exception or give some useful feedback to the user!
return;
}
returnedClass.AnotherExampleMethod();
}
请查看here了解详情。