从 Umbraco 检查搜索 UDI 获取图像的 URL



我正在使用 Umbraco 和 Lucene 和 Examine

正在尝试获取图像的网址,但目前我得到以下内容"umb://media/57ad107794724d0289b4f9fe44c298a8">

如何从 UDI 获取媒体的 URL,到目前为止我的代码尝试如下。

foreach (var item in searchResults)
            {

                var content = Umbraco.Content(item.Fields["id"]);
                if (item.Fields.Keys.Contains("image"))
                {
                    var image = item.Fields["image"].Split(new[] {","}, StringSplitOptions.RemoveEmptyEntries);
                    var pathToImage = string.Join(",", image);
                    var mediaItem = Umbraco.TypedContent(pathToImage);
                    var test3 = mediaItem.Url; <--------------------Throws NullReferenceException
                }
}

任何帮助表示赞赏

尝试以下操作

if (item.Fields.Keys.Contains("image"))
                {
                    var imgUdi          = item.Fields["image"];
                    var udi             = Udi.Parse(imgUdi);
                    var mediaTest       = Umbraco.TypedMedia(udi);
                    string pathToImage  = mediaTest.Url;
                }

注意我如何使用 Udi.Parse 来获取 ID,然后您可以使用它来获取 url

最新更新