v9.6.2017.0808   重构正向工程,基于映射表查找数据库字段类型到实体类型的映射
大石头 authored at 2017-08-08 21:38:06
1.33 KiB
X
using System;

namespace XCode.DataAccessLayer
{
    /// <summary>
    /// 数据关系。
    /// 一个表如果有多个数据关系,表明是多对多的关系表;如果只有一个关系,需要看是否唯一,它决定是一对一还是一对多。并可根据关系,生成对应的数据索引。
    /// 可根据数据关系生成扩展属性。
    /// 正向工程将会为所有数据关系建立相对应的索引。
    /// </summary>
    public interface IDataRelation
    {
        #region 属性
        /// <summary>数据列</summary>
        String Column { get; set; }

        /// <summary>引用表</summary>
        String RelationTable { get; set; }

        /// <summary>引用列</summary>
        String RelationColumn { get; set; }

        /// <summary>是否唯一</summary>
        Boolean Unique { get; set; }

        /// <summary>是否计算出来的,而不是数据库内置的</summary>
        Boolean Computed { get; set; }
        #endregion

        #region 扩展属性
        /// <summary>说明数据表</summary>
        IDataTable Table { get; }
        #endregion

        #region 方法
        /// <summary>克隆到指定的数据表</summary>
        /// <param name="table"></param>
        IDataRelation Clone(IDataTable table);
        #endregion
    }
}