加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 为什么我不能在自己的班级中访问UmbracoHelper

发布时间:2020-12-15 23:49:10 所属栏目:百科 来源:网络整理
导读:我想在自己的课堂上从Umbraco那里得到一张照片. 我不明白为什么我不能在课堂上使用@umbraco助手.我在类中定义了它的命名空间,例如: using Umbraco.Core.Models;using Umbraco.Web; 我写的时候只能使用UmbracoHelper: var umbracoHelper = new UmbracoHelpe
我想在自己的课堂上从Umbraco那里得到一张照片.

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

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

我写的时候只能使用UmbracoHelper:

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

这是我的班级:

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语句.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读