Post.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using Masuit.LuceneEFCore.SearchEngine;
  2. using System;
  3. using System.ComponentModel.DataAnnotations;
  4. using System.ComponentModel.DataAnnotations.Schema;
  5. namespace WebSearchDemo.Database
  6. {
  7. /// <summary>
  8. /// 文章
  9. /// </summary>
  10. [Table("Post")]
  11. public class Post : LuceneIndexableBaseEntity
  12. {
  13. public Post()
  14. {
  15. PostDate = DateTime.Now;
  16. }
  17. /// <summary>
  18. /// 标题
  19. /// </summary>
  20. [Required(ErrorMessage = "文章标题不能为空!"), LuceneIndex]
  21. public string Title { get; set; }
  22. /// <summary>
  23. /// 作者
  24. /// </summary>
  25. [Required, MaxLength(24, ErrorMessage = "作者名最长支持24个字符!"), LuceneIndex]
  26. public string Author { get; set; }
  27. /// <summary>
  28. /// 内容
  29. /// </summary>
  30. [Required(ErrorMessage = "文章内容不能为空!"), LuceneIndex(IsHtml = true)]
  31. public string Content { get; set; }
  32. /// <summary>
  33. /// 发表时间
  34. /// </summary>
  35. public DateTime PostDate { get; set; }
  36. /// <summary>
  37. /// 作者邮箱
  38. /// </summary>
  39. [Required(ErrorMessage = "作者邮箱不能为空!"), LuceneIndex]
  40. public string Email { get; set; }
  41. /// <summary>
  42. /// 标签
  43. /// </summary>
  44. [StringLength(256, ErrorMessage = "标签最大允许255个字符"), LuceneIndex]
  45. public string Label { get; set; }
  46. /// <summary>
  47. /// 文章关键词
  48. /// </summary>
  49. [StringLength(256, ErrorMessage = "文章关键词最大允许255个字符"), LuceneIndex]
  50. public string Keyword { get; set; }
  51. }
  52. }