Item.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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. [ForeignKey("CategoryID")]
  15. public virtual FaqCategory FaqCategory { get; set; } = null!;
  16. [Key]
  17. [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
  18. [DisplayName("PK")]
  19. [Comment("PK")]
  20. public int ID { get; set; }
  21. [Required]
  22. [DisplayName("분류 ID")]
  23. [Comment("분류 ID")]
  24. public int CategoryID { get; set; }
  25. [Required]
  26. [DisplayName("질문")]
  27. [Comment("질문")]
  28. [DataType(DataType.Text)]
  29. [StringLength(255)]
  30. public string Question { get; set; } = null!;
  31. [DisplayName("답변")]
  32. [Comment("답변")]
  33. [DataType(DataType.Html)]
  34. public string? Answer { get; set; } = null;
  35. [Required]
  36. [DisplayName("순서")]
  37. [Comment("순서")]
  38. public int Order { get; set; } = 0;
  39. [Required]
  40. [DisplayName("사용 여부")]
  41. [Comment("사용 여부")]
  42. public bool IsActive { get; set; } = false;
  43. [DisplayName("조회 수")]
  44. [Comment("조회 수")]
  45. public int Views { get; set; } = 0;
  46. [DisplayName("수정 일시")]
  47. [Comment("수정 일시")]
  48. [DataType(DataType.DateTime)]
  49. public DateTime? UpdatedAt { get; set; } = null;
  50. [DisplayName("등록 일시")]
  51. [Comment("등록 일시")]
  52. [DataType(DataType.DateTime)]
  53. public DateTime CreatedAt { get; set; }
  54. }
  55. }