【问题标题】:Editing Media Properties programmatically in Umbraco (4.11)在 Umbraco (4.11) 中以编程方式编辑媒体属性
【发布时间】:2013-07-03 16:57:11
【问题描述】:

你好,

在 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 以不同的方式处理文档类型和媒体类型并且我之前使用的代码(插入代码)不再有效时,问题就出现了。

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

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

我确信必须有更简单的方法来做到这一点(希望我很厚)。

感谢您抽出宝贵时间阅读和回复!

【问题讨论】:

    标签: c# razor umbraco


    【解决方案1】:

    您应该能够完全按照您已经完成的操作,但替换该行:

    Document doc = new Document(mediaItemId);
    

    Media doc = new Media(mediaItemId);
    

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

    【讨论】:

    • 你先生是明星! :) 正是我所需要的
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多