Я хочу создать систему пользовательских закладок на своем сайте, чтобы пользователь мог добавить в закладки и поместить в корень (категорию) закладки
Таким образом, результат будет таким:
Parent1
1. Bookmar1
2.Bookmar2
Parent2
1.ZZZZZZ
2.YYYY
добавление: если пользователь никогдаЗакладка до того, как будет родитель (категория) по умолчанию, так что это родитель по умолчанию. Пользователь может добавить родителя (категорию) столько, сколько он хочет
parent - это модели категорий в моем коде, вот мой дизайн
public class BookmarkModel
{
[Key]
public long Id { get; set; }
[Required]
[StringLength(50, MinimumLength = 1, ErrorMessage = "Cant be empty")]
[Index("FK_UNIQUE", IsUnique = true)]
public String Name { get; set; }
}
public class UserBookmarkModel
{
[Key]
public long Id { get; set; }
[Required]
[Index("FK_UNIQUE", 2, IsUnique = true)]
public long UserId { get; set; }
[ForeignKey("UserId")]
public virtual ApplicationUser User { get; set; }
public long BookmarkId { get; set; }
[ForeignKey("BookmarkId")]
public virtual BookmarkModel BookmarkModel { get; set; }
public long CategoryModelId { get; set; }
[ForeignKey("CategoryModelId")]
public virtual CategoryModel CategoryModel { get; set; }
public DateTime Created { get; set; } = DateTime.Now;
}
public class CategoryModel
{
[Key]
public long Id { get; set; }
[Required]
[StringLength(50, MinimumLength = 1, ErrorMessage = "Cant be empty")]
[Index("FK_UNIQUE", IsUnique = true)]
public String Name { get; set; }
}
Хорошо ли моя база данных?