下面是我的对象:
public class CMSContentItemFolder
{
int Id {get; set; }
public Guid InstanceId { get; set; }
public List<CMSContentItemFolder> ContentItemFolders { get; set; }
public List<CMSContentItem> ContentItems { get; set; }
}因此,该文件夹可以有无限级别的子文件夹,就像c驱动器上的系统文件夹一样。
为了让我在文件夹及其子文件夹上执行CRUD,我必须编写递归方法,这是有效的,但有点痛苦。我知道Patching API会更好,但我还没有见过适用于递归对象的示例。
在RavenDb中做这件事最好的方法是什么?
谢谢!
发布于 2013-01-08 06:50:23
您应该使用封装或引用进行建模,而不是同时使用和。在您的对象中,嵌套CMSContentItemFolder上的Id的用途是什么?你可能应该参考一下。这同样适用于内容项。它们可能都在各自的文档中。
public List<int> ContentItemFolderIds { get; set; }
public List<int> ContentItemIds { get; set; }这样,在打补丁时就不需要处理任何递归问题了。
https://stackoverflow.com/questions/14203411
复制相似问题