/*-------------------------------------------------------------------------
 * 功能描述: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; }

    }
}