/*-------------------------------------------------------------------------
 * 功能描述：RelationshipBase
 * 作者：xulisong
 * 创建时间： 2019/6/17 9:24:42
 * 版本号：v1.0
 *  -------------------------------------------------------------------------*/

using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using JBIM.Common;
using JBIM.Definition;

namespace JBIM.Relationship
{
    /*
     * 关系有个组织类别。一对一，或者一对多
     *
     * 比如：Connector所属关系一对一，Connector关联关系一对多
     *
     * 关系分成两类：由属性定义的关系，直接有关系表定义的关系
     *      a、由属性定义的关系，可以自动解析，属性键值，反射找到对应的属性进行赋值
     *      b、关系表定义的关系，直接加入document
     *
     *    通过关系名称进行反射，获取相应的值进行赋值，或者在List集合中加入相关项;
     *
     * 开放自定义关系：
     *
     * 数据定义，尽量不要掺加方法
     */
    /// <summary>
    /// 关系基类
    /// </summary>
    [TypeDefiniton(TypeDefinition.Relationship)]
    public class RelationshipBase: BimObject
    {
        public RelationshipBase()
        {
            //this.ElementType = TypeDefinition.Relationship.ToString();
        }

        public void SetElementType(TypeDefinition type)
        {
            this.ElementType =TypeDefinitonUtil.GetTypeDefiniton(type);
        }
        /// <summary>
        /// 主体对象
        /// </summary>
        public BimId RelatingObject { get; set; }

    }
}
