Umbraco getpropertyvalue不适用于直播

时间:2017-03-03 16:53:17

标签: c# model-view-controller umbraco umbraco7

我有一个在本地完美运行的辅助方法,但是不想在dev服务器上工作。我使用各种日志来找出问题所在。它确实获取当前节点和主页,但是当它尝试使用GetPropertyValue<Dictionary<string, string>>时,它返回为null。

错误消息System.NullReferenceException: Object reference not set to an instance of an object.因为我试图稍后使用此值。

代码:

            var helper = new UmbracoHelper(UmbracoContext.Current);
            var homepage = helper.TypedContent(UmbracoContext.Current.PageId).AncestorOrSelf(1);
            var test = homepage.Children.First(x => x.DocumentTypeAlias == "test");
            Dictionary<string, string> testDict = test.GetPropertyValue<Dictionary<string, string>>("testOptions");

有什么想法吗?

它甚至可以找到测试节点的所有内容,但是testDict为null

1 个答案:

答案 0 :(得分:0)

脱离我的头顶,它可能是以下之一:

  • 该属性不在实时站点节点上,检查doctype以确保该属性存在,也可能是在live字段别名中存在拼写错误,或者字段别名不同
  • 有一个属性转换器可以处理尚未部署的转换

检查这两个问题是否存在问题。如果不是这样,只需将字段的值作为字符串获取,看看那里有什么,字段是空的,还是那里有东西?