在Umbraco中以编程方式编辑媒体属性(4.11)

时间:2013-07-03 16:57:12

标签: c# razor umbraco

Howdie,

在umbraco中实现类似系统的视频存在一些问题,并且想知道是否有任何超级聪明的人愿意让我感到愚蠢(学点东西)并指出我正确的方向。

问题: 在我决定使用int“likes”属性创建自定义媒体类型之前,我已在文档上编辑了属性。如果用户在回发之前不喜欢这个视频,我会增加此项,如果有的话,则禁用该按钮。

我想像这样做:

Document doc = new Document(mediaItemId);
int curValue = doc.getProperty("likes").Value;
doc.getProperty("likes").Value = (curValue + 1);
doc.Save();

http://our.umbraco.org/wiki/reference/api-cheatsheet/modifying-document-properties

当我发现umbraco以不同方式处理文档类型和媒体类型并且之前使用的代码(插入代码)不再有效时,问题就出现了。

已经离开了一段时间,我离开的唯一两种可能性我真的不想做。第一个是创建一个新的媒体项,复制属性然后“保存”在db中的原始文件,另一个是创建一个自定义表,而不用担心umbraco API。

http://our.umbraco.org/documentation/Reference/management/Media/

我确信必须有一种更简单的方法(希望我很厚)。

感谢您花时间阅读并回复!

1 个答案:

答案 0 :(得分:1)

你应该能够准确地完成你已经完成的工作,但要更换一行:

Document doc = new Document(mediaItemId);

Media doc = new Media(mediaItemId);

您当然必须确保您的媒体类型具有“赞”属性。这可以在Umbraco的“设置>媒体类型”部分中完成,就像您可以向文档类型添加属性一样。