首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >N2:设置ContentItems的默认值

N2:设置ContentItems的默认值
EN

Stack Overflow用户
提问于 2010-11-01 18:14:41
回答 1查看 461关注 0票数 0

使用N2 CMS

如果我想在创建新的ContentItem时设置一些默认值(例如,设置新页面的CreatedByUser值,以便记录最初的创建者),那么将代码放在哪里是最好的?

我认为ContentItem的构造函数并不理想,因为它会在加载现有对象时被调用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-11-03 21:02:52

如果你使用的是Get/SetDetail语法,那么你可以在getter属性中这样做:

代码语言:javascript
复制
public virtual string TopImage
{
    get { return (string)(GetDetail("TopImage") ?? string.Empty); }
    set { SetDetail("TopImage", value); }
}

这有点难看,所以Get/Set detail也有一个重载,允许您指定默认值:

代码语言:javascript
复制
public virtual string TopImage
{
    get { return GetDetail("TopImage", String.Empty /* Default */); }
    set { SetDetail("TopImage", value, String.Empty /* Default */); }
}

如果您希望在保存某些内容时保存值,请尝试覆盖ContentItem上的AddTo方法。每次保存对象时都会调用它,所以如果只想在第一次保存时调用它,请小心(当项目是“新的”时,ID为== 0)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4068021

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档