c# – 为什么我不能在自己的班级中访问UmbracoHelper
作者:互联网
我想在自己的课堂上从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语句.
标签:c,asp-net-mvc,umbraco,umbraco7 来源: https://codeday.me/bug/20190716/1474765.html