动态获取媒体ID

本文关键字:ID 媒体 获取 动态 | 更新日期: 2023-09-27 18:02:17

我目前在一个项目与c#和umbraco CMS工作。现在我面临着一些问题,其中之一是我不知道如何动态地获取媒体ID,请查看ID来自UMBRACO

Media file = new Media(3557);
string url = file.getProperty("umbracoFile").Value.ToString();
string teste = file.getProperty("impressions").Value.ToString();
if (teste == "" || teste == null) { teste = "0"; }
int count= Convert.ToInt32(teste);
file.getProperty("impressions").Value = count+1;
file.Save();

你看到第一行了吗?媒体文件=新媒体(id)?我想动态获取这个id,我会解释原因。我有这个处理程序,以获得网站上的横幅点击。我有4张图片,我想有多少次客户端点击他们的计数。因此,我不能让id = 3557,我需要动态获取图像的id

动态获取媒体ID

我假设您正在使用事件处理程序,如:

protected void imgMyMedia_OnClicked(object sender, EventArgs e) { your code }

在这种情况下,您可以将发送方对象强制转换为控件类型,并读取那里设置的任何参数。我想应该是这样的:

MediaControl myMedia = (MediaControl)sender; int ID = myMedia.MediaId;

或类似的东西。我不熟悉umbraco代码,不能这么精确,但这应该是正确的。

当你首先渲染图像时你想把图像id放在一个数据属性中所以你的html将是这样的:

<img src="/media/someimage.jpg" data-id="someMediaIdHere" alt="alt" title="title" />

然后使用,当你的javascript拾取onclick事件,然后你可以传递图像id到服务器端,并做你的跟踪。