动态获取媒体ID

时间:2014-05-08 14:02:06

标签: c# umbraco

我目前正在使用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。

2 个答案:

答案 0 :(得分:0)

当你首先渲染图像时,你想将图像id放在数据属性中,这样你的html就像这样:

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

然后在您的javascript选择onclick事件时使用它,然后您可以将图片ID传递到服务器端并进行跟踪。

答案 1 :(得分:0)

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

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

在这种情况下,您可以将sender对象强制转换为控件类型,并读取其中的任何参数集。我认为它会是这样的:

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

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