我目前正在努力从我的动态模块项目集合中获取图像数据。如何从Sitefinity 10中的动态模块集合中检索图像数据?
我尝试过搜索各种资源,但仍无法找到解决方案。
我有一个IQueryable类型,其中包含动态模块项的集合。然后,我使用LINQ select来转换这个集合来过滤数据并返回一个自定义类型。参阅以下内容:
IQueryable<DynamicContent> collection = (Query to Sitefinity for my custom dynamic module items);
return collection.Select(b => new CustomType()
{
Title = b.GetValue<string>("Title"),
Body = b.GetValue<string>("Body"),
ExternalLink = b.GetValue<string>("ExternalLink"),
Image = b.GetRelatedItems<Image>("Image")
});
当我尝试上述所有其他属性被填充除了它返回一个空的图片对象的图像属性。但是当我使用单个项目时:
collection.FirstOrDefault().GetRelatedItems<Image>("Image")
上面将返回一个Image对象。
不知道为什么我无法查询我的IQueryable集合上的图像数据,但仅当使用单个项目时,有任何想法?
谢谢大家!
非常感谢您的深入回复,当我重新开始工作时,我会尝试以上方法。一个简单的问题,是否有任何性能测试显示内容链接API比相关项目更快我有这样的想法,即引入相关项目来取代内容链接API? –
您可以在这里找到包含测试编号的文章:https://www.americaneagle.com/blog/web-development-blog/staff/2015/04/30/the-cost-of-getting-related-items-in- sitefinity-s-api这是相当古老的,但仍然适用于Sitefinity 10 –
再次感谢您分享上面的链接,我偶然发现你提到的文章,但没有意识到! –