我正在使用umbraco文档类型,其中包含IPublishedContent集合作为属性。这在视图中表现为一个字符串,它是对象键的CSV,然后我必须使用内容帮助器解析并查找底层值。
by @foreach (var author in Umbraco.Content(story.GetPropertyValue<string>("author").Split(',')))
{
@author.Name
}
作为MVC开发人员,这感觉非常错误。有没有更好的方法让我失踪?理想情况下,Umbraco应该知道这些实际上是内容项并映射它们,类似于ORM中的导航属性。
很乐意采用强类型方法,但除了将一切都分解为儿童行为之外,我找不到更多文档。
答案 0 :(得分:0)
作为MVC开发人员,您应该查看允许您执行story.GetPropertyValue<List<IPublishedContent>>("myAlias")
.GetPropertyValue&lt;&gt;()方法将使用适当的值转换器。
如果你正在使用v7,它们被称为&#34;属性值转换器&#34;,但工作方式相同。
确保开发一个值转换器以使用ContentCache(而不依赖于uQuery或Services,因为这些会触发数据库查询)。