【问题标题】:How can I get guid from permanent URL (media selector)?如何从永久 URL(媒体选择器)获取指南?
【发布时间】:2017-10-31 08:40:07
【问题描述】:

我在自定义 Web 部件中为 Kentico 的媒体选择使用永久 URL。我想要的是它显示的 url 中的 GUID,所以我可以从数据库中获取媒体的信息(使用文件媒体提供程序)。

这是一个 URL 示例

~/getmedia/998dd0ab-10d3-4cc1-bfbd-8e7bec48cf8c/sample_doc.doc

我需要的是998dd0ab-10d3-4cc1-bfbd-8e7bec48cf8c 号码。我尝试了每个助手都没有成功。

【问题讨论】:

    标签: kentico


    【解决方案1】:

    我通常获取 GUID 的方式是通过正则表达式而不是 Kentico API。请尝试以下操作:

    string pattern = @"[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}";
    string input = "~/getmedia/998dd0ab-10d3-4cc1-bfbd-8e7bec48cf8c/sample_doc.doc";
    
    var guid = Regex.Match(input, pattern, RegexOptions.IgnoreCase).Value;
    

    guid 变量将设置为 998dd0ab-10d3-4cc1-bfbd-8e7bec48cf8c,然后您可以使用它来获取您想要的信息。

    【讨论】:

    • 太棒了!!,最后一个,你如何从永久 url 或 guid 获取媒体库直接路径,而不从设置中取消选中“使用永久 URL”??,我想下载文件c# HttpResponse so 和 TransmitFile 但我需要直接路径
    • 试试看CMS.MediaLibrary.Web.UI.MediaLibraryFunctions.GetMediaFileDirectUrl(),一旦你有了MediaFileInfo,你应该有你需要调用的东西。
    猜你喜欢
    • 1970-01-01
    • 2021-09-15
    • 1970-01-01
    • 2020-03-01
    • 1970-01-01
    • 2014-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多