MappingMemberDescriptor.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using Ant.Core;
  2. using Ant.DbExpressions;
  3. using Ant.ORM;
  4. using System;
  5. using System.Reflection;
  6. namespace Ant.Descriptors
  7. {
  8. /// <summary>
  9. /// 实体映射所有成员
  10. /// </summary>
  11. public abstract class MappingMemberDescriptor : MemberDescriptor
  12. {
  13. protected MappingMemberDescriptor(FiledMetaData declaringEntityDescriptor)
  14. : base(declaringEntityDescriptor)
  15. {
  16. }
  17. /// <summary>
  18. /// 主键
  19. /// </summary>
  20. public bool IsPrimaryKey { get; set; }
  21. /// <summary>
  22. /// 自增长
  23. /// </summary>
  24. public bool IsAutoIncrement { get; set; }
  25. /// <summary>
  26. ///
  27. /// </summary>
  28. public abstract DbColumn Column { get; }
  29. /// <summary>
  30. /// 获取列的值
  31. /// </summary>
  32. /// <param name="instance"></param>
  33. /// <returns></returns>
  34. public abstract object GetValue(object instance);
  35. /// <summary>
  36. /// 给列进行赋值
  37. /// </summary>
  38. /// <param name="instance"></param>
  39. /// <param name="value"></param>
  40. public abstract void SetValue(object instance, object value);
  41. }
  42. }