Ejemplo n.º 1
0
 /// <summary>
 /// 取得欄位預設值(字串預設為空字串、數值預設為 0,布林值預設為 false,其他為 DBNull.Value)。
 /// </summary>
 /// <param name="fieldDefine">欄位定義。</param>
 public static object GetDefaultValue(GFieldDefine fieldDefine)
 {
     if (fieldDefine.AllowNull)
         return DBNull.Value;
     else
         return DataFunc.GetDefaultValue(fieldDefine.DbType);
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 匯入欄位
 /// </summary>
 /// <param name="originalRow">來源資料列</param>
 private void ImportFieldNames(GEntityRow originalRow)
 {
     foreach (GEntityField field in originalRow.Fields)
     {
         this.Fields.Add(field.Key, DataFunc.GetDefaultValue(field.Value.GetType()));
     }
 }
Ejemplo n.º 3
0
 /// <summary>
 /// 設定資料表中每個欄位的預設值。
 /// </summary>
 /// <param name="tableDefine">資料表定義。</param>
 /// <param name="dataTable">資料表。</param>
 public static void SetDataColumnDefaultValue(GTableDefine tableDefine, DataTable dataTable)
 {
     foreach (DataColumn oColumn in dataTable.Columns)
     {
         var oFieldDefine = tableDefine.Fields[oColumn.ColumnName];
         if (BaseFunc.IsNotNull(oFieldDefine) && !oFieldDefine.AllowNull)
         {
             oColumn.DefaultValue = DataFunc.GetDefaultValue(oFieldDefine.DbType);
         }
     }
 }
Ejemplo n.º 4
0
        /// <summary>
        /// 依實體欄位定義新增命令參數。
        /// </summary>
        /// <param name="dbFieldDefine">實體欄位定義。</param>
        public virtual DbParameter AddParameter(GDbFieldDefine dbFieldDefine)
        {
            DbParameter oParameter;

            oParameter = AddParameter(dbFieldDefine.FieldName, dbFieldDefine.DbType);
            oParameter.SourceColumn = dbFieldDefine.FieldName;
            if (!dbFieldDefine.AllowNull)
            {
                oParameter.Value = DataFunc.GetDefaultValue(dbFieldDefine.DbType);
            }
            return(oParameter);
        }