public Dictionary <string, string> ToHeaders() { var headers = new Dictionary <string, string>(); var prefersHeaders = new List <string>(); if (Upsert) { var resolverAttr = DuplicateResolution.GetAttribute <MapToAttribute>(); prefersHeaders.Add($"resolution={resolverAttr.Mapping}"); } var returnAttr = Returning.GetAttribute <MapToAttribute>(); if (returnAttr != null) { prefersHeaders.Add($"return={returnAttr.Mapping}"); } var countAttr = Count.GetAttribute <MapToAttribute>(); if (Count != CountType.None && countAttr != null) { prefersHeaders.Add($"count={countAttr.Mapping}"); } headers.Add("Prefer", String.Join(",", prefersHeaders.ToArray())); if (Returning == ReturnType.Minimal) { headers.Add("Accept", "*/*"); } return(headers); }
public void Test2() { var tbd = TableDefinition.FromType <TypeTestModel>(); var table = GetSchema().CreateTable("Test1", tbd); var model = new TypeTestModel(); model.String = "Testing..."; var statement = doob.PgSql.Statements.Insert.Into("TestTable") .AddColumnsFromTableDefinition(tbd) .AddValuesFromObject(model) .AddClause(Returning.Columns(tbd.PrimaryKeys().Select(p => p.GetNameForDb()).ToArray())); var sql = statement.GetSqlCommand(tbd); table.Insert(model); var executor = new DbExecuter(table.GetConnectionString()); var resp = executor.ExecuteReader <TypeTestModel>($"SELECT * FROM {table}"); }
public Returning MakeReturningResult(SqlDataReader reader) { var model = new Returning(); if (reader.ColumnExists("Id")) { model.Id = reader["Id"] is DBNull ? Guid.Empty : Guid.Parse(reader["Id"].ToString()); } if (reader.ColumnExists("ProductId")) { model.ProductId = reader["ProductId"] is DBNull ? Guid.Empty : Guid.Parse(reader["ProductId"].ToString()); } if (reader.ColumnExists("RealizationId")) { model.RealizationId = reader["RealizationId"] is DBNull ? Guid.Empty : Guid.Parse(reader["RealizationId"].ToString()); } if (reader.ColumnExists("EmployeeId")) { model.EmployeeId = reader["EmployeeId"] is DBNull ? Guid.Empty : Guid.Parse(reader["EmployeeId"].ToString()); } if (reader.ColumnExists("Date")) { model.Date = reader["Date"] is DBNull ? DateTime.MaxValue : Convert.ToDateTime(reader["Date"], CultureInfo.CurrentCulture); } if (reader.ColumnExists("IsDefected")) { model.IsDefected = reader["IsDefected"] is DBNull ? false : Convert.ToBoolean(reader["IsDefected"], CultureInfo.CurrentCulture); } return(model); }
protected Dictionary <string, object> Insert(object document, List <string> returnValues) { var dict = document.ToDotNetDictionary(); foreach (var col in TableDefinition.Columns()) { if (!col.CanBeNull && !String.IsNullOrWhiteSpace(col.DefaultValue)) { if (dict.ContainsKey(col.GetNameForDb())) { if (dict[col.GetNameForDb()] == null) { dict.Remove(col.GetNameForDb()); continue; } if (dict[col.GetNameForDb()] is long l) { if (l == 0) { dict.Remove(col.GetNameForDb()); continue; } } } } } var insert = Statements.Insert.Into(GetTableName()) .AddColumnsFromTableDefinition(TableDefinition) .AddValuesFromObject(dict); if (returnValues == null || !returnValues.Any()) { returnValues = TableDefinition.PrimaryKeys().Select(p => p.DbName).ToList(); } if (returnValues.Any()) { insert.AddClause(Returning.Columns(returnValues.ToArray())); } return(Execute().ExecuteReader <Dictionary <string, object> >(insert.GetSqlCommand(TableDefinition)).FirstOrDefault()); }
public Delete AddClause(IDeleteMember clause) { switch (clause) { case From from: _fromClause = from; break; case IWhere where: _whereClause = where; break; case Returning returning: _returning = returning; break; } return(this); }
public Insert AddClause(IInsertMember clause) { switch (clause) { case IntoColumns ic: _intoColumns = ic; break; case IValues val: _valueClauses.Add(val); break; case Returning ret: _returningClause = ret; break; } return(this); }
public void Test1() { var tbd = TableDefinition.FromType <TypeTestModel>(); var table = GetSchema().CreateTable("Test1", tbd); var model = new TypeTestModel(); model.String = "Testing..."; var statement = doob.PgSql.Statements.Insert.Into("TestTable") .AddColumnsFromTableDefinition(tbd) .AddValuesFromObject(model) .AddClause(Returning.Columns(tbd.PrimaryKeys().Select(p => p.GetNameForDb()).ToArray())); var sql = statement.GetSqlCommand(tbd); table.Insert(model); }
private void ReturningConfirmationForm_Load(object sender, EventArgs e) { Realization currentRealization = Seller.Instance.UnitOfWork.RealizationRepository.GetRealizationById(Guid.Parse(_realizationId)); // _returning = new Returning() { EmployeeId = Seller.Instance.Id, ProductId = currentRealization.ProductId, RealizationId = currentRealization.Id }; Product currentProduct = Seller.Instance.UnitOfWork.ProductRepository.GetProductById(currentRealization.ProductId); //fill text box txtRetRelizId.Text = currentRealization.Id.ToString(); txtRetProdCode.Text = currentProduct.Code; txtRetProdName.Text = currentProduct.Name; txtRetQuontity.Text = currentRealization.Quantity.ToString(); txtRetIncome.Text = currentRealization.Income.ToString(); txtRetDate.Text = currentRealization.Date.ToString("d"); txtRetSellerName.Text = Seller.Instance.LastName + " " + Seller.Instance.FirstName; }
public Delete Returning(Returning returning) { return(AddClause(returning)); }
public Insert Returning(Returning returning) { return(AddClause(returning)); }