/// <summary> /// Конструктор /// </summary> /// <param name="name">Название ключа</param> /// <param name="srcTableName">Исходная таблица</param> /// <param name="srcColumnName">Колонка исходной таблицы для ключа</param> /// <param name="refTableName">Ссылочная таблица</param> /// <param name="refColumnName">Колонка ссылочной таблицы для ключа</param> /// <param name="deleteAction">Действие при удалении</param> public ForeignKey(string name, string srcTableName, string srcColumnName, string refTableName, string refColumnName, ForeignAction deleteAction = ForeignAction.SetNull) : base(name) { this.srcTableName = srcTableName; this.srcColumnName = srcColumnName; this.refTableName = refTableName; this.refColumnName = refColumnName; this.deleteAction = deleteAction; }
/// <summary> /// Конструктор /// </summary> /// <param name="name">Название ключа</param> /// <param name="deleteAction">Действие при удалении</param> public ForeignKey(string name, ForeignAction deleteAction = ForeignAction.SetNull) : base(name, typeof(T1).Name, string.Empty, typeof(T2).Name, string.Empty, deleteAction) { fixedName = true; }
/// <summary> /// Конструктор /// </summary> /// <param name="deleteAction">Действие при удалении</param> public ForeignKey(ForeignAction deleteAction = ForeignAction.SetNull) : base(typeof(T1).Name, string.Empty, typeof(T2).Name, string.Empty, deleteAction) { }
/// <summary> /// Конструктор /// </summary> /// <param name="srcTableName">Исходная таблица</param> /// <param name="srcColumnName">Колонка исходной таблицы для ключа</param> /// <param name="refTableName">Ссылочная таблица</param> /// <param name="refColumnName">Колонка ссылочной таблицы для ключа</param> /// <param name="deleteAction">Действие при удалении</param> public ForeignKey(string srcTableName, string srcColumnName, string refTableName, string refColumnName, ForeignAction deleteAction = ForeignAction.SetNull) : this(string.Format("FK_{0}_{1}", srcTableName, refTableName), srcTableName, srcColumnName, refTableName, refColumnName, deleteAction) { }