public DbParameter AddDbParameter(object value) { DbParameter returnValue = DataBaseProvider.GetParameter($"@param{_databaseProvider.GetUniqe()}", value); _parameters.Add(returnValue); return(returnValue); }
public void AddField(string fieldname, object value, FieldType fieldtype, Type keyInitializerType, bool isChanged) { if (!_selectFields.Contains(fieldname)) { _selectFields.Add(fieldname); } if (fieldtype == FieldType.KeyField) { if (value == null) { _whereClausel.Add(string.Format("{0} IS NULL", fieldname)); } else { SqlParameter param = DataBaseProvider.GetParameter($"@param{_parameters.Count}", value); _whereClausel.Add($"{fieldname} = {param.ParameterName}"); _parameters.Add(param); } } else if (isChanged && (fieldtype == FieldType.WriteableField || fieldtype == FieldType.UpdateableField) && !_setValues.ContainsKey(fieldname)) { if (value == null) { _setValues.Add(fieldname, "NULL"); } else { SqlParameter param = DataBaseProvider.GetParameter($"@param{_parameters.Count}", value); _setValues.Add(fieldname, param.ParameterName); _parameters.Add(param); } } }
public void AddField(string fieldname, object value, FieldType fieldtype, Type keyInitializerType, bool isChanged) { if (fieldtype == FieldType.KeyField) { SqlParameter param = DataBaseProvider.GetParameter($"@param{_parameters.Count}", value); _whereClausel.Add(string.Format("{0} = {1}", fieldname, param.ParameterName)); _parameters.Add(param); } }
public void AddField(string fieldname, object value, FieldType fieldtype, Type keyInitializerType, bool isChanged) { if (!_selectFields.Contains(fieldname)) { _selectFields.Add(fieldname); } if (_insertFields.Contains(fieldname)) { return; } if (fieldtype == FieldType.KeyField) { KeyInitializer keyInitializer = keyInitializerType != null?KeyInitializer.GetInitializer(keyInitializerType) : null; if (keyInitializer == null || !keyInitializer.CheckEmpty(value)) { SqlParameter param = DataBaseProvider.GetParameter($"@param{_parameters.Count}", value); _insertFields.Add(fieldname); _insertValues.Add(param.ParameterName); _whereClausel.Add(string.Format("{0} = {1}", param.ParameterName, fieldname)); _parameters.Add(param); } else { SqlParameter param = new SqlParameter($"@param{_parameters.Count}", keyInitializer.SqlDbType); param.Value = DBNull.Value; param.IsNullable = true; if (!string.IsNullOrEmpty(keyInitializer.BeforInsert)) { _beforInsert.AppendLine(keyInitializer.BeforInsert.Replace("{parameter}", param.ParameterName)); } if (!string.IsNullOrEmpty(keyInitializer.AfterInsert)) { _afterInsert.AppendLine(keyInitializer.AfterInsert.Replace("{parameter}", param.ParameterName)); } if (keyInitializer.SetInInsert) { _insertFields.Add(fieldname); _insertValues.Add(param.ParameterName); } _whereClausel.Add(string.Format("{0} = {1}", param.ParameterName, fieldname)); _parameters.Add(param); } } else if (fieldtype == FieldType.WriteableField || fieldtype == FieldType.InsertableField) { if (value == null) { _insertFields.Add(fieldname); _insertValues.Add("NULL"); } else { SqlParameter param = DataBaseProvider.GetParameter($"@param{_parameters.Count}", value); _insertFields.Add(fieldname); _insertValues.Add(param.ParameterName); _parameters.Add(param); } } }