123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- using Ant.ORM;
- using System;
- using System.Reflection;
- namespace Ant.Descriptors
- {
- public class NavigationMemberDescriptor : MemberDescriptor
- {
- MemberInfo _memberInfo;
- /// <summary>
- /// 假设实体 Order 内有个导航属性 User, Order.UserId=User.Id,则 ThisKey 为 Order.UserId,AssociatingKey 为 User.Id
- /// </summary>
- /// <param name="memberInfo"></param>
- /// <param name="memberType"></param>
- /// <param name="declaringEntityDescriptor"></param>
- /// <param name="thisKey">定义导航属性实体相关的属性或字段名称</param>
- /// <param name="associatingKey">关联导航属性实体类型的属性或字段名称</param>
- public NavigationMemberDescriptor(MemberInfo memberInfo, Type memberType, FiledMetaData declaringEntityDescriptor, string thisKey, string associatingKey)
- : base(declaringEntityDescriptor)
- {
- this._memberInfo = memberInfo;
- this.ThisKey = thisKey;
- this.AssociatingKey = associatingKey;
- }
- /// <summary>
- /// 获取有关成员特性的信息并提供对成员元数据的访问
- /// </summary>
- public override MemberInfo MemberInfo
- {
- get { return this._memberInfo; }
- }
- /// <summary>
- /// 表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型
- /// </summary>
- public override Type MemberInfoType
- {
- get { throw new NotImplementedException(); }
- }
- /// <summary>
- /// 标记每个已定义为 MemberInfo 的派生类的成员类型
- /// </summary>
- public override MemberTypes MemberType
- {
- get { throw new NotImplementedException(); }
- }
- /// <summary>
- /// 假设实体 Order 内有个导航属性 User, Order.UserId=User.Id,则 ThisKey 为 Order.UserId,AssociatingKey 为 User.Id
- /// </summary>
- public string ThisKey { get; private set; }
- public string AssociatingKey { get; private set; }
- }
- }
|