gpt4 book ai didi

c# - 为什么我不能在我自己的类中访问 UmbracoHelper

转载 作者:行者123 更新时间:2023-11-30 13:25:42 24 4
gpt4 key购买 nike

我正在尝试在我自己的类(class)中从 Umbraco 获取图像。

我不明白为什么我不能在类里面使用@umbraco 助手。我在类中定义了它的命名空间,例如:

using Umbraco.Core.Models;
using Umbraco.Web;

我只能使用 UmbracoHelper,当我写:

var umbracoHelper = new UmbracoHelper(Umbraco.Web.UmbracoContext.Current);

这是我的类(class):

using Umbraco.Core.Models;
using Umbraco.Web;

namespace House.Site.Helpers
{
public static class ImageClass
{
public static string GetAbsoluteImageUrl(this IPublishedContent node, string propertyName)
{
var umbracoHelper = new UmbracoHelper(Umbraco.Web.UmbracoContext.Current);

var imgID = node.GetPropertyValue<string>("propertyName");
var imgObject = umbracoHelper.TypedMedia(imgID);

return imgObject.Url;
}

}
}

最佳答案

由于您的类没有继承自任何 Umbraco 基类,因此您必须自己实例化 UmbracoHelper。

使用:

var umbracoHelper = new UmbracoHelper(UmbracoContext.Current)

非常好,可以让您访问所需的内容。

你应该能够只使用 UmbracoContext.Current 而不是完整的命名空间和类名,因为你已经有了 Umbraco.Web 的 using 语句

关于c# - 为什么我不能在我自己的类中访问 UmbracoHelper,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41756827/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com