Item.cs 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
  2. using Microsoft.EntityFrameworkCore;
  3. using System.ComponentModel;
  4. using System.ComponentModel.DataAnnotations;
  5. using System.ComponentModel.DataAnnotations.Schema;
  6. namespace bitforum.Models.Page.Faq
  7. {
  8. [Table("FaqItem")]
  9. [Index(nameof(Order), Name = "IX_FaqItem_Order")]
  10. [Index(nameof(IsActive), Name = "IX_FaqItem_IsActive")]
  11. public class FaqItem
  12. {
  13. [ValidateNever]
  14. public virtual FaqCategory FaqCategory { get; set; } = null;
  15. [Key]
  16. public int ID { get; set; }
  17. [Required]
  18. [ForeignKey("FaqCategory")]
  19. [DisplayName("분류ID")]
  20. public int CategoryID { get; set; }
  21. [Required]
  22. [DisplayName("질문")]
  23. [DataType(DataType.Text)]
  24. [MaxLength(255)]
  25. public string Question { get; set; }
  26. [DisplayName("답변")]
  27. [DataType(DataType.Html)]
  28. public string? Answer { get; set; } = null;
  29. [Required]
  30. [DisplayName("순서")]
  31. public int Order { get; set; } = 0;
  32. [Required]
  33. [DisplayName("사용 여부")]
  34. public bool IsActive { get; set; } = false;
  35. [DisplayName("조회 수")]
  36. public int Views { get; set; } = 0;
  37. [DisplayName("수정일시")]
  38. [DataType(DataType.DateTime)]
  39. public DateTime? UpdatedAt { get; set; } = null;
  40. [DisplayName("등록일시")]
  41. [DataType(DataType.DateTime)]
  42. public DateTime? CreatedAt { get; set; } = null;
  43. }
  44. }