Exemplo n.º 1
0
        /// <summary>
        /// 設定値からオブジェクトを取得する。
        /// </summary>
        /// <param name="value">設定値</param>
        /// <returns>DBDataSettingType</returns>
        /// <exception cref="ArgumentException">不適切な値の場合</exception>
        public static DBDataSettingType FromValue(int value)
        {
            var exception = new ArgumentException($"{nameof(DBDataSettingType)}の取得に失敗しました。条件値:{value}");

            if ($"{value}".Length == 5)
            {
                // 値が5桁の場合は DesignatedType の可能性がある
                try
                {
                    var _ = DBKind.FromDBDataSettingTypeCode(value.SubInt(4, 1));
                    // DB種別が取得できる場合は DesignatedType
                    return(DesignatedType);
                }
                catch
                {
                    // DB種別が取得できない場合は適切な値ではない
                    throw exception;
                }
            }

            try
            {
                return(_FindFirst(x => x.Code == value));
            }
            catch
            {
                throw exception;
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// 自身が持つ情報からDatabaseDatインスタンスを生成する。
 /// </summary>
 /// <param name="dbKind">[Nullable] DB種別</param>
 /// <returns>DatabaseDatインスタンス</returns>
 public DatabaseDat GenerateDatabaseDat(DBKind dbKind = null)
 {
     return(new DatabaseDat
     {
         DBKind = dbKind,
         SettingList = SelectDataSettingList()
     });
 }
Exemplo n.º 3
0
        /// <summary>
        /// 自身が持つ情報からDatabaseProjectインスタンスを生成する。
        /// </summary>
        /// <param name="dbKind">[Nullable] DB種別</param>
        /// <returns>DatabaseProjectインスタンス</returns>
        public DatabaseProject GenerateDatabaseProject(DBKind dbKind = null)
        {
            var result = new DatabaseProject
            {
                DBKind = dbKind
            };

            result.TypeSettingList.AddRange(SelectTypeSettingList());
            return(result);
        }