Oop 书店模式
我正在制定一个解决方案。我想为下面的结构建模Oop 书店模式,oop,uml,Oop,Uml,我正在制定一个解决方案。我想为下面的结构建模 Collection 1 Category 1 Sub Category 1.1 Book 1 Book 2 Book 3 Sub Category 1.2 Book 1 Category 2 Sub Category 2.1
Collection 1
Category 1
Sub Category 1.1
Book 1
Book 2
Book 3
Sub Category 1.2
Book 1
Category 2
Sub Category 2.1
Book 2
Sub Category 2.2
Book 3
Sub Category 2.3
Book 4
Category 3
Sub Category 3.1
Book 4
)
什么是对其建模的最佳方式,以便可以在两个方向上进行遍历
1) 从收藏到书籍(即,如果选择了收藏,则查找该收藏下的所有类别、子类别和书籍。)
2) 从一本书到另一本书(即,如果选择了书,应该能够找到它所属的子类别、类别和收藏)听起来您需要的是一个线程树。或者,只需使用几乎任何半合理的关系数据库。以下是应用程序的基本模型
公共课堂教材
{
公共类别ParentCategory{get;set;}
公共图书(){}
}
公共类类别
{
公共类别集子类别{get;set;}
公共书店书籍{get;set;}
公共类别()
{
子类别=新类别集();
图书=新图书集();
}
}
公共类集合
{
公共类别集类别{get;set;}
公众收藏(){
类别=新类别集();
}
}
公共类图书集:System.Collections.ObjectModel.Collection
{
公共图书集(){}
}
公共类CategorySet:System.Collections.ObjectModel.Collection
{
公共类别集(){}
}
公共类集合集:System.Collections.ObjectModel.Collection
{
公共集合集(){}
}
public class Book
{
public Category ParentCategory { get; set; }
public Book() { }
}
public class Category
{
public CategorySet SubCategories { get; set; }
public BookSet Books { get; set; }
public Category()
{
SubCategories = new CategorySet();
Books = new BookSet();
}
}
public class Collection
{
public CategorySet Categories { get; set; }
public Collection() {
Categories = new CategorySet();
}
}
public class BookSet : System.Collections.ObjectModel.Collection<Book>
{
public BookSet() { }
}
public class CategorySet : System.Collections.ObjectModel.Collection<Category>
{
public CategorySet() { }
}
public class CollectionSet : System.Collections.ObjectModel.Collection<Collection>
{
public CollectionSet() { }
}