Kentico-通过API更新文档字段后生成图像预览

问题描述 投票:0回答:2

我有一个脚本可以将图像上传到媒体库(可以正常工作),然后将每个图像分配给一个同样有效的特定文档字段。唯一的问题是预览缩略图未显示:

enter image description here

更新字段的代码非常简单:

private static void AssignImageToProject(string projectID, int index, string imgUrl)
{
    var projectPage = _projectPages
        .Where(p => p.GetStringValue("ProjectID", null) == projectID)
        .FirstOrDefault();

    if (projectPage == null) return;

    projectPage.CheckOut();

    projectPage.SetValue($"ProjectImage{index+1}", $"{imgUrl}");

    // Updates the page in the database
    projectPage.Update();

    // Creates a new version of the updated page (required even when not using content locking)
    // If using content locking, checks in the page
    projectPage.CheckIn();

    projectPage.Publish();
}

根据数据库,图像URL是正确的,并且图像按预期在前端显示。我可以调用一种方法来生成预览吗?

顺便说一下,我正在使用Kentico 11。

kentico kentico-11
2个回答
0
投票

尽管默认的Kentico控件未在管理界面中显示URL,但它仍以“〜”符号开头保存URL。如果您这样修改代码:

projectPage.SetValue($"ProjectImage{index+1}", $"~{imgUrl}");

应该会有所帮助。确保在数据库的实际字段中看到如下所示:

~/getmedia/16b40b07-9b41-4812-9194-4bb35470ad8c/Bakery-And-Coffee.jpg?width=849&height=565&ext=.jpg

0
投票

您的项目图片字段的类型是什么?这不是文件或附件。对于这些类型,您可以预览。

如果您使用管理界面手动上传图片,在这种情况下可以预览吗?如果是,则只需检查数据库并比较差异。

© www.soinside.com 2019 - 2024. All rights reserved.