public void Dispose() { if (_db != null) { _db.Dispose(); _db = null; } }
public IQueryable<Category> GetCategories() { //get an instance of the database var db = new WingtipToys.Models.ProductContext(); //create and retur a queryable(as a set of data result) IQueryable<Category> query = db.Categories; return query; }
public IQueryable<Product> GetProducts([QueryString("id")] int? categoryId, [RouteData] string categoryName) { var _db = new ProductContext(); IQueryable<Product> query = _db.Products; if (categoryId.HasValue && categoryId > 0) query = query.Where(p => p.CategoryID == categoryId); if (!string.IsNullOrEmpty(categoryName)) query = query.Where(p => string.Compare(p.Category.CategoryName, categoryName) == 0); return query; }
public IQueryable<Product> GetProducts([QueryString("id")] int? categoryId) { var _db = new WingtipToys.Models.ProductContext(); IQueryable<Product> query = _db.Products; if (categoryId.HasValue && categoryId > 0) { query = query.Where(p => p.CategoryID == categoryId); } return query; }
public IQueryable<Product> GetProduct([QueryString("productID")] int? productId, [RouteData] string productName) { var _db = new ProductContext(); IQueryable<Product> query = _db.Products; if (productId.HasValue && productId > 0) query = query.Where(p => p.ProductID == productId); else if (!string.IsNullOrEmpty(productName)) query = query.Where(p => string.Compare(p.ProductName, productName) == 0); else query = null; return query; }
// The return type can be changed to IEnumerable, however to support // paging and sorting, the following parameters must be added: // int maximumRows // int startRowIndex // out int totalRowCount // string sortByExpression public IQueryable<Category> GetCategories() { try { var _db = new WingtipToys.Models.ProductContext(); IQueryable<Category> query = _db.Categories; return query; } catch(Exception exp) { throw; } }
public IQueryable<Product> GetProduct([QueryString("productID")]int? productId) { var _db = new WingtipToys.Models.ProductContext(); IQueryable<Product> query = _db.Products; if (productId.HasValue && productId > 0) { query = query.Where(p => p.ProductID == productId); } else { query = null; } return query; }
public bool AddProduct(string ProductName, string ProductDesc, string ProductPrice, string ProductCategory, string ProductImagePath) { var myProduct = new Product(); myProduct.ProductName = ProductName; myProduct.Description = ProductDesc; myProduct.UnitPrice = Convert.ToDouble(ProductPrice); myProduct.ImagePath = ProductImagePath; myProduct.CategoryID = Convert.ToInt32(ProductCategory); using (ProductContext _db = new ProductContext()) { _db.Products.Add(myProduct); _db.SaveChanges(); } return true; }
protected void RemoveProductButton_Click(object sender, EventArgs e) { using (var _db=new WingtipToys.Models.ProductContext()) { int productId = Convert.ToInt16(DropDownRemoveProduct.SelectedValue); var myItem = (from c in _db.Products where c.ProductID == productId select c).FirstOrDefault(); if (myItem != null) { _db.Products.Remove(myItem); _db.SaveChanges(); // Reload the page. string pageUrl = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.Count() - Request.Url.Query.Count()); Response.Redirect(pageUrl + "?ProductAction=remove"); } else LabelRemoveStatus.Text = "Unable to locate product."; } }
// Added after custom url routing parameter: [RouteData] string productName public IQueryable <Product> GetProducts([QueryString("productID")] int?productId, [RouteData] string productName) { var _db = new WingtipToys.Models.ProductContext(); IQueryable <Product> query = _db.Products; if (productId.HasValue && productId > 0) { query = query.Where(p => p.ProductID == productId); } // Added after custom url routing else if (!String.IsNullOrEmpty(productName)) { query = query.Where(p => String.Compare(p.ProductName, productName) == 0); } else { query = null; } return(query); }
public IQueryable <Product> GetProducts( [QueryString("id")] int?categoryId, [RouteData] string categoryName) { var _db = new WingtipToys.Models.ProductContext(); IQueryable <Product> query = _db.Products; if (categoryId.HasValue && categoryId > 0) { query = query.Where(p => p.CategoryID == categoryId); } if (!String.IsNullOrEmpty(categoryName)) { query = query.Where(p => String.Compare(p.Category.CategoryName, categoryName) == 0); } return(query); }
protected void RemoveProductButton_Click(object sender, EventArgs e) { var db = new WingtipToys.Models.ProductContext(); int productId = Convert.ToInt16(DropDownRemoveProduct.SelectedValue); var myItem = (from c in db.Products where c.ProductID == productId select c).FirstOrDefault(); if (myItem != null) { db.Products.Remove(myItem); db.SaveChanges(); // Reload the page. string pageUrl = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.Count() - Request.Url.Query.Count()); Response.Redirect(pageUrl + "?ProductAction=remove"); } else { LabelRemoveStatus.Text = "Unable to locate product."; } }
public void UpdateItem(string updateCartID, int updateProductID, int quantity) { using (var _db = new WingtipToys.Models.ProductContext()) { try { var myItem = (from c in _db.ShoppingCartItems where c.CartId == updateCartID && c.Product.ProductID == updateProductID select c).FirstOrDefault(); if (myItem != null) { myItem.Quantity = quantity; _db.SaveChanges(); } } catch (Exception e) { throw new Exception("ERROR: Unable to Update Cart Item - " + e.Message.ToString(), e); } } }
public void RemoveItem(string removeCartID, int removeProductID) { using (var _db = new WingtipToys.Models.ProductContext()) { try { var myItem = (from c in _db.ShoppingCartItems where c.CartId == removeCartID && c.Product.ProductID == removeProductID select c).FirstOrDefault(); if (myItem != null) { // Loại bỏ mục. _db.ShoppingCartItems.Remove(myItem); _db.SaveChanges(); } } catch (Exception exp) { throw new Exception("ERROR: Unable to Remove Cart Item - " + exp.Message.ToString(), exp); } } }
public IQueryable<Product> GetProduct( [QueryString("ProductID")] int? productId, [RouteData] string productName) { var _db = new WingtipToys.Models.ProductContext(); IQueryable<Product> query = _db.Products; if (productId.HasValue && productId > 0) { query = query.Where(p => p.ProductID == productId); } else if (!String.IsNullOrEmpty(productName)) { query = query.Where(p => String.Compare(p.ProductName, productName) == 0); } else { query = null; } return query; }
public void UpdateShoppingCartDatabase(String cartId, ShoppingCartUpdates[] CartItemUpdates) { using (var db = new WingtipToys.Models.ProductContext()) { try { var cart = GetCartItems(); foreach (var cartItem in cart) { //comparing items in the cart with the amount of updates to be done for (int i = 0; i < CartItemUpdates.Count(); i++) { //when the items match against each other(cart and updates) if (cartItem.Product.ProductID == CartItemUpdates[i].ProductId) { //if update is set for removal if (CartItemUpdates[i].PurchaseQuantity < 1 || CartItemUpdates[i].RemoveItem == true) { RemoveItem(cartId, cartItem.ProductId); } else { UpdateItem(cartId, cartItem.ProductId, CartItemUpdates[i].PurchaseQuantity); } } } } } catch (Exception ex) { throw new Exception("ERROR: Unable to Update Cart Database - " + ex.Message, ex); } } }
public IQueryable <Product> GetProduct( [QueryString("ProductID")] int?productId, [RouteData] string productName) { var _db = new WingtipToys.Models.ProductContext(); String StockText; IQueryable <Product> query = _db.Products; if (productId.HasValue && productId > 0) { query = query.Where(p => p.ProductID == productId); } else if (!String.IsNullOrEmpty(productName)) { query = query.Where(p => String.Compare(p.ProductName, productName) == 0); } else { query = null; } foreach (var product in query) { if (product.Stock > 10) { stock.Text = "More than 10 available"; } else if (product.Stock < 0) { stock.Text = "On back order"; } else { stock.Text = "Less than 10 available"; } } return(query); }
public void UpdateShoppingCartDatabase(String cartId, ShoppingCartUpdates[] CartItemUpdates) { using (var db = new WingtipToys.Models.ProductContext()) { try { int CartItemCount = CartItemUpdates.Count(); List <CartItem> myCart = GetCartItems(); foreach (var cartItem in myCart) { // Iterate through all rows within shopping cart list for (int i = 0; i < CartItemCount; i++) { if (cartItem.Product.ProductID == CartItemUpdates[i].ProductId) { if (CartItemUpdates[i].PurchaseQuantity < 1 || CartItemUpdates[i].RemoveItem == true) { RemoveItem(cartId, cartItem.ProductId); } else { UpdateItem(cartId, cartItem.ProductId, CartItemUpdates[i].PurchaseQuantity); } } } } } catch (Exception exp) { throw new Exception("ERROR: Unable to Update Cart Database - " + exp.Message.ToString(), exp); } } }
public string UpdateFood(int id, Product product) { try { var _db = new WingtipToys.Models.ProductContext(); //Fetch object from db Product f = _db.Products.Find(id); f.ProductName = product.ProductName; f.UnitPrice = product.UnitPrice; f.CategoryID = product.CategoryID; f.Description = product.Description; f.ImagePath = product.ImagePath; _db.SaveChanges(); return(product.ProductName + " was succesfully updated"); } catch (Exception e) { return("Error:" + e); } }
public void UpdateShoppingCartDatabase(String cartId, ShoppingCartUpdates[] CartItemUpdates) { using (var db = new WingtipToys.Models.ProductContext()) ; { try { int CartItemCount = CartItemUpdates.Count(); List<CartItem> myCart = GetCartItems(); foreach (var cartItem in myCart) { // Iterate through allrows within shopping cart list for (int i = 0; i < CartItemCount; i++) { if (cartItem.Product.ProductID == CartItemUpdates[i].ProductId) { if (CartItemUpdates[i].PurchaseQuantity < 1 || CartItemUpdates[i].RemoveItem == true) { RemoveItem(cartId, cartItem.ProductId); } else { UpdateItem(cartId, cartItem.ProductId, CartItemUpdates[i].PurchaseQuantity); } } } } } catch (Exception exp) { throw new Exception("ERROR: Unable to update cart database - " + exp.Message.ToString(), exp); } } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { NVPAPICaller payPalCaller = new NVPAPICaller(); string retMsg = ""; string token = ""; string PayerID = ""; NVPCodec decoder = new NVPCodec(); bool ret = true; if (ret) { Session["payerId"] = PayerID; string AMT = Session["payment_amt"].ToString(); // Verify total payment amount as set on CheckoutStart.aspx. try { decimal paymentAmountOnCheckout = Convert.ToDecimal(Session["payment_amt"].ToString()); decimal paymentAmoutFromPayPal = Convert.ToDecimal(AMT); if (paymentAmountOnCheckout != paymentAmoutFromPayPal) { Response.Redirect("CheckoutError.aspx?" + "Desc=Amount%20total%20mismatch."); } } catch (Exception) { Response.Redirect("CheckoutError.aspx?" + "Desc=Amount%20total%20mismatch."); } // Get the shopping cart items and process them. using (WingtipToys.Logic.ShoppingCartActions usersShoppingCart = new WingtipToys.Logic.ShoppingCartActions()) { List<CartItem> myOrderList = usersShoppingCart.GetCartItems(); // Display Order information. List<Order> orderList = new List<Order>(); using (ProductContext _db = new ProductContext()) { int id = Convert.ToInt32(Session["currentOrderId"].ToString()); Order myOrder = _db.Orders.Where(order => order.OrderId == id).First(); if (myOrder != null) { orderList.Add(myOrder); } } ShipInfo.DataSource = orderList; ShipInfo.DataBind(); // Display OrderDetails. OrderItemList.DataSource = myOrderList; OrderItemList.DataBind(); } } else { Response.Redirect("CheckoutError.aspx?" + retMsg); } } }
protected void CheckoutConfirm_Click(object sender, EventArgs e) { Session["payerId"] = ""; var myOrder = new Order(); string AMT = Session["payment_amt"].ToString(); myOrder.OrderDate = DateTime.Now; myOrder.Username = User.Identity.Name; myOrder.FirstName = TextBoxFN.Text; myOrder.LastName = TextBoxSN.Text; myOrder.Address = TextBoxAddress.Text; myOrder.City = TextBoxCity.Text; myOrder.State = TextBoxZone.Text; myOrder.PostalCode = TextBoxIndex.Text; myOrder.Country = TextBoxZone.Text; myOrder.Email = TextBoxMail.Text; myOrder.Phone = TextBoxPhone.Text; myOrder.PaymentTransactionId = "1"; myOrder.OrderDetails = new List<OrderDetail>(); myOrder.DSID = 1; myOrder.Total = Convert.ToDecimal(AMT); // Verify total payment amount as set on CheckoutStart.aspx. try { decimal paymentAmountOnCheckout = Convert.ToDecimal(Session["payment_amt"].ToString()); decimal paymentAmoutFromPayPal = Convert.ToDecimal(AMT); if (paymentAmountOnCheckout != paymentAmoutFromPayPal) { Response.Redirect("CheckoutError.aspx?" + "Desc=Amount%20total%20mismatch."); } } catch (Exception) { Response.Redirect("CheckoutError.aspx?" + "Desc=Amount%20total%20mismatch."); } // Get DB context. ProductContext _db = new ProductContext(); // Add order to DB. _db.Orders.Add(myOrder); _db.SaveChanges(); // Get the shopping cart items and process them. using (WingtipToys.Logic.ShoppingCartActions usersShoppingCart = new WingtipToys.Logic.ShoppingCartActions()) { List<CartItem> myOrderList = usersShoppingCart.GetCartItems(); // Add OrderDetail information to the DB for each product purchased. for (int i = 0; i < myOrderList.Count; i++) { // Create a new OrderDetail object. var myOrderDetail = new OrderDetail(); myOrderDetail.OrderId = myOrder.OrderId; myOrderDetail.Username = User.Identity.Name; myOrderDetail.ProductId = myOrderList[i].ProductId; myOrderDetail.Quantity = myOrderList[i].Quantity; myOrderDetail.UnitPrice = myOrderList[i].Product.UnitPrice; // Add OrderDetail to DB. //myOrder.OrderDetails.Add(myOrderDetail); _db.OrderDetails.Add(myOrderDetail); _db.SaveChanges(); } // Set OrderId. Session["currentOrderId"] = myOrder.OrderId; // Display Order information. List<Order> orderList = new List<Order>(); orderList.Add(myOrder); } //_db.Orders.Add(myOrder); //_db.SaveChanges(); Response.Redirect("CheckoutReview.aspx"); }
void SupplierSystemConfirm(int systemID, int reserveID) { bool result = false; using (ProductContext _db = new ProductContext()) { SupplierSystem system = _db.SupplierSystems.Where(a => a.ID == systemID).First(); if (system != null) { try { ISupplyRequest svr = (ISupplyRequest)Activator.GetObject(typeof(ISupplyRequest), system.ConnectionString); result = svr.ConfirmReserve(reserveID); } catch (Exception) { } } } if (!result) { throw new ExceptionSupplierSystemConfirmFail(); } }
public IQueryable GetProducts() { var _db = new WingtipToys.Models.ProductContext(); IQueryable query = _db.Products; return query; }
Tuple<int, int> DeliveryServicesSurvey(DateTime time) { int timeOut = 100; offDeliveryService = true; Tuple<int, int> result = null; resultDeliveryServiceGlobal = null; using (ProductContext _db = new ProductContext()) { foreach (var system in _db.DeliveryServices) { object[] parameters = new object[] { system.ID, system.ConnectionString, time }; Thread thread = new Thread(DeliveryServiceSurvey); thread.Start(parameters); } } for (int i = 0; i < 20 && null == result; ++i) { Thread.Sleep(timeOut); lock (lockDeliveryService) { result = resultDeliveryServiceGlobal; } } if (null == result) { if (offDeliveryService) { throw new ExceptionDeliveryServiceOff(); } else { throw new ExceptionDeliveryServiceWrongTime(); } } Console.WriteLine(" resultDeliveryService={0}:{1}", result.Item1, result.Item2); return result; }
public IQueryable<Category> GetCategories() { var _db = new WingtipToys.Models.ProductContext(); IQueryable<Category> query = _db.Categories; return query; }
public void RemoveItem(string removeCartID, int removeProductID) { using (var _db = new WingtipToys.Models.ProductContext()) { try { var myItem = (from c in _db.ShoppingCartItems where c.CartId == removeCartID && c.Product.ProductID == removeProductID select c).FirstOrDefault(); if (myItem != null) { // Remove Item _db.ShoppingCartItems.Remove(myItem); _db.SaveChanges(); } } catch (Exception exp) { throw new Exception("ERROR: Unable to remove cart item - " + exp.Message.ToString(), exp); } } }
public IQueryable<Product> GetProducts() { var db = new WingtipToys.Models.ProductContext(); IQueryable<Product> query = db.Products; return query; }
protected void Page_Load() { if (!IsPostBack) { // Determine the sections to render UserManager manager = new UserManager(); if (HasPassword(manager)) { changePasswordHolder.Visible = true; } else { setPassword.Visible = true; changePasswordHolder.Visible = false; } CanRemoveExternalLogins = manager.GetLogins(User.Identity.GetUserId()).Count() > 1; // Render success message var message = Request.QueryString["m"]; if (message != null) { // Strip the query string from action Form.Action = ResolveUrl("~/Account/Manage"); SuccessMessage = message == "ChangePwdSuccess" ? "Your password has been changed." : message == "SetPwdSuccess" ? "Your password has been set." : message == "RemoveLoginSuccess" ? "The account was removed." : String.Empty; successMessage.Visible = !String.IsNullOrEmpty(SuccessMessage); } } { string UserName = User.Identity.GetUserName(); Order[] orders = null; Product[] products = null; OrderDetail[] orderDetail = null; using (ProductContext _db = new ProductContext()) { orders = _db.Orders.Where(o => o.Username == UserName).ToArray(); products = _db.Products.ToArray(); orderDetail = _db.OrderDetails.ToArray(); } if (orders != null && 0 < orders.Length) { foreach (Order elem in orders) { int id = elem.OrderId; OrderDetail[] ds = orderDetail.Where(p => p.OrderId == id).ToArray(); if (ds != null) { elem.OrderDetails.AddRange(ds); } elem.OrderDetails = elem.OrderDetails.Distinct().ToList(); } TableOrders.Visible = true; TableRow row; TableCell cell; { row = new TableRow(); cell = new TableCell(); cell.Text = "Номер заказа"; row.Cells.Add(cell); cell = new TableCell(); cell.Text = "Дата"; row.Cells.Add(cell); cell = new TableCell(); cell.Text = "Товар[Количество]"; row.Cells.Add(cell); cell = new TableCell(); cell.Text = "Итого"; row.Cells.Add(cell); TableOrders.Rows.Add(row); } int count = orders.Length; for (int i = 0; i < count; ++i) { row = new TableRow(); cell = new TableCell(); cell.Text = orders[i].OrderId.ToString(); row.Cells.Add(cell); cell = new TableCell(); cell.Text = orders[i].OrderDate.ToString(); row.Cells.Add(cell); cell = new TableCell(); List<OrderDetail> details = orders[i].OrderDetails; cell.Text = string.Empty; if (details != null) { foreach (OrderDetail d in details) { Product product = products.Where(p => p.ProductID == d.ProductId).First(); if (product != null) { cell.Text += string.Format("{0}[{1}], ", product.ProductName, d.Quantity); } else { cell.Text += string.Format("{0}[{1}], ", d.ProductId, d.Quantity); } } } row.Cells.Add(cell); cell = new TableCell(); cell.Text = orders[i].Total.ToString(); row.Cells.Add(cell); TableOrders.Rows.Add(row); } } else { TableOrders.Visible = false; } } /* { string UserName = User.Identity.GetUserName(); using (WingtipToys.Logic.ShoppingCartActions usersShoppingCart = new WingtipToys.Logic.ShoppingCartActions()) { List<CartItem> myOrderList = usersShoppingCart.GetCartItems(); // Display Order information. List<Order> orderList = new List<Order>(); using (ProductContext _db = new ProductContext()) { Order[] myOrders = _db.Orders.Where(o => o.Username == UserName).ToArray(); if (myOrders != null) { orderList.AddRange(myOrders); } } // Display OrderDetails. OrderItemList.DataSource = myOrderList; OrderItemList.DataBind(); } } */ }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { // Verify user has completed the checkout process. if ((string)Session["userCheckoutCompleted"] != "true") { Session["userCheckoutCompleted"] = string.Empty; Response.Redirect("CheckoutError.aspx?" + "Desc=Unvalidated%20Checkout."); } NVPAPICaller payPalCaller = new NVPAPICaller(); string retMsg = ""; string token = ""; string finalPaymentAmount = ""; string PayerID = ""; NVPCodec decoder = new NVPCodec(); token = string.Empty; // Session["token"].ToString(); PayerID = Session["payerId"].ToString(); finalPaymentAmount = Session["payment_amt"].ToString(); //bool ret = payPalCaller.DoCheckoutPayment(finalPaymentAmount, token, PayerID, ref decoder, ref retMsg); bool ret = true; if (ret) { // Retrieve PayPal confirmation value. ProductContext _db = new ProductContext(); // Get the current order id. int currentOrderId = -1; if (Session["currentOrderId"] != string.Empty) { currentOrderId = Convert.ToInt32(Session["currentOrderID"]); } Order myCurrentOrder; if (currentOrderId >= 0) { // Get the order based on order id. myCurrentOrder = _db.Orders.Single(o => o.OrderId == currentOrderId); // Update the order to reflect payment has been completed. myCurrentOrder.PaymentTransactionId = string.Empty; // Save to DB. _db.SaveChanges(); } // Clear shopping cart. using (WingtipToys.Logic.ShoppingCartActions usersShoppingCart = new WingtipToys.Logic.ShoppingCartActions()) { usersShoppingCart.EmptyCart(); } // Clear order id. Session["currentOrderId"] = string.Empty; } else { Response.Redirect("CheckoutError.aspx?" + retMsg); } } }
public IQueryable <Category> GetCategories() { var _db = new WingtipToys.Models.ProductContext(); return(_db.Categories); }
public void UpdateItem(string CartID, int ProdID, int qty) { using (var db = new WingtipToys.Models.ProductContext()) { try { var myItem = (from c in db.ShoppingCartItems where c.CartID == CartID && c.Product.ProductID == ProdID select c).FirstOrDefault(); if (myItem != null) { myItem.Quantity = qty; db.SaveChanges(); } } catch (Exception) { throw; } } }
public void RemoveItem(string remvCartID, int remvProdID) { using (var db = new WingtipToys.Models.ProductContext()) { try { var myItem = (from c in db.ShoppingCartItems where c.CartID == remvCartID && c.Product.ProductID == remvProdID select c).FirstOrDefault(); if (myItem != null) { db.ShoppingCartItems.Remove(myItem); db.SaveChanges(); } } catch (Exception) { throw; } } }
public void UpdateItem(string updateCartID, int updateProductID, int quantity) { using (var _db = new WingtipToys.Models.ProductContext()) { try { var myItem = (from c in _db.ShoppingCartItems where c.CartId == updateCartID && c.Product.ProductID == updateProductID select c).FirstOrDefault(); if (myItem != null) { myItem.Quantity = quantity; _db.SaveChanges(); } } catch (Exception exp) { throw new Exception("ERROR: Unable to Update Cart Item - " + exp.Message.ToString(), exp); } } }
//finds an returns the link to next required product category public Category GetNextTestCategory() { var _db = new WingtipToys.Models.ProductContext(); Category query = _db.Categories.SingleOrDefault(Category => Category.CategoryName == "Mainboards"); ShoppingCartActions actions = new ShoppingCartActions(); List <CartItem> items = actions.GetCartItems(); List <Product> products = new List <Product>(); foreach (CartItem item in items) { //System.Diagnostics.Debug.WriteLine("Add " + item.Product.ProductName + " " + item.Product.ProductID); //System.Diagnostics.Debug.WriteLine("Aus DB geholt: " + (_db.Products.SingleOrDefault(Product => Product.ProductID == item.Product.ProductID).ProductName)); products.Add(_db.Products.SingleOrDefault(Product => Product.ProductID == item.Product.ProductID)); } Boolean hasProcessor = false; Boolean hasMainboard = false; Boolean hasGraphicsCards = false; Boolean hasHardDrive = false; Boolean hasCase = false; Boolean isFinished = true; if (!items.Any()) { return(query); } else { foreach (Product product in products) { //System.Diagnostics.Debug.WriteLine(product.ProductName + " " + product.CategoryID); switch (product.CategoryID) { case 1: System.Diagnostics.Debug.WriteLine("has Mainboard = true"); hasMainboard = true; break; case 2: System.Diagnostics.Debug.WriteLine("has Processor = true"); hasProcessor = true; break; case 3: System.Diagnostics.Debug.WriteLine("has GraphicsCard = true"); hasGraphicsCards = true; break; case 4: System.Diagnostics.Debug.WriteLine("has HardDrive = true"); hasHardDrive = true; break; case 5: System.Diagnostics.Debug.WriteLine("has Case = true"); hasCase = true; break; default: Response.Redirect("Configurator.aspx"); break; } } if (!hasMainboard) { // System.Diagnostics.Debug.WriteLine("Kein Prozessor!"); return(query); } else if (!hasProcessor) { // System.Diagnostics.Debug.WriteLine("Keine Grafikkarte!"); query = _db.Categories.SingleOrDefault(Category => Category.CategoryName == "Processors"); return(query); } else if (!hasGraphicsCards) { // System.Diagnostics.Debug.WriteLine("Kein Mainboard!"); query = _db.Categories.SingleOrDefault(Category => Category.CategoryName == "GraphicsCards"); return(query); } else if (!hasHardDrive) { // System.Diagnostics.Debug.WriteLine("Keine HardDrives!"); query = _db.Categories.SingleOrDefault(Category => Category.CategoryName == "HardDrives"); return(query); } else if (!hasCase) { // System.Diagnostics.Debug.WriteLine("Keine Cases!"); query = _db.Categories.SingleOrDefault(Category => Category.CategoryName == "Cases"); return(query); } else { query = _db.Categories.SingleOrDefault(Category => Category.CategoryName == "KeyboardsAndMouses"); return(query); } } }
Tuple<int, int> SupplierSystemsSurvey(Good[] itemIDAndCount) { int timeOut = 100; offSupplierSystem = true; Tuple<int, int> result = null; resultSupplierSystemGlobal = null; using (ProductContext _db = new ProductContext()) { foreach (var system in _db.SupplierSystems) { object[] parameters = new object[] { system.ID, system.ConnectionString, itemIDAndCount }; Thread thread = new Thread(SupplierSystemSurvey); thread.Start(parameters); } } for (int i = 0; i < 20 && null == result; ++i) { Thread.Sleep(timeOut); lock (lockSupplierSystem) { result = resultSupplierSystemGlobal; } } if (null == result) { if (offSupplierSystem) { throw new ExceptionSupplierSystemOff(); } else { throw new ExceptionSupplierSystemNotGood(); } } Console.WriteLine(" resultSupplierSystem={0}:{1}", result.Item1, result.Item2); return result; }
public IQueryable <Product> GetProducts( [QueryString("id")] int?categoryId, [RouteData] string categoryName) { var _db = new WingtipToys.Models.ProductContext(); bool isIntel = false; bool isAmd = false; ShoppingCartActions actions = new ShoppingCartActions(); List <CartItem> items = actions.GetCartItems(); List <Product> products = new List <Product>(); foreach (CartItem item in items) { products.Add(_db.Products.SingleOrDefault(Product => Product.ProductID == item.Product.ProductID)); } //Filtere nach Mainboards List <Product> processors = new List <Product>(); foreach (Product product in products) { if (product.CategoryID == 2) { processors.Add(product); } } IQueryable <Product> query = _db.Products; query = query.Where(p => p.CategoryID == 1); if (processors.Any()) { foreach (Product processor in processors) { if (processor.isIntel) { isIntel = true; } if (processor.isAmd) { isAmd = true; } } if (isIntel == false && isAmd == true) { query = query.Where(p => p.isAmd == true); } else if (isIntel == true && isAmd == false) { query = query.Where(p => p.isIntel == true); } else if (isIntel == false && isAmd == false) { query = query.Where(p => p.isIntel == false); query = query.Where(p => p.isAmd == false); } //Falls beide true, dann einfach alles zurueckgeben } return(query); }
protected void Page_Load(object sender, EventArgs e) { if(!IsPostBack) { NVPAPICaller payPalCAller = new NVPAPICaller(); string retMsg = ""; string token = ""; string PayerID = ""; NVPCodec decoder = new NVPCodec(); token = Session["token"].ToString(); bool ret = payPalCAller.GetCheckoutDetails( token, ref PayerID, ref decoder, ref retMsg ); if(ret) { Session["payerId"] = PayerID; var myOrder = new Order(); myOrder.OrderDate = Convert.ToDateTime(decoder["TIMESTAMP"].ToString()); myOrder.Uername = User.Identity.Name; myOrder.FirstName = decoder["FIRSTNAME"].ToString(); myOrder.LastName = decoder["LASTNAME"].ToString(); myOrder.Address = decoder["SHIPTOSTREET"].ToString(); myOrder.City = decoder["SHIPTOCITY"].ToString(); myOrder.State = decoder["SHIPTOSTATE"].ToString(); myOrder.PostalCode = decoder["SHIPTOZIP"].ToString(); myOrder.Country = decoder["SHIPTOCOUNTRYCODE"].ToString(); myOrder.Email = decoder["EMAIL"].ToString(); myOrder.Total = Convert.ToDecimal( decoder["AMT"].ToString() ); //verify total payment amount as set on checkout start.aspx. try { decimal paymentAmountOnCheckout = Convert.ToDecimal( Session["payment_amt"].ToString() ); decimal paymentAmountFromPayPal = Convert.ToDecimal( decoder["AMT"].ToString() ); if (paymentAmountOnCheckout != paymentAmountFromPayPal) { Response.Redirect( "CheckoutError.aspx?" + "Desc=Amount%20total%20mismatch." ); } } catch (Exception) { Response.Redirect("CheckoutError.aspx?" + "Desc=Amount%20total%20mismatch."); } //get db context ProductContext _db = new ProductContext(); //add order to db _db.Orders.Add(myOrder); _db.SaveChanges(); //Get the shopping cart items and process them using (WingtipToys.Logic.ShoppingCartActions usersShoppingCart = new WingtipToys.Logic.ShoppingCartActions()) { List<CartItem> myOrderList = usersShoppingCart.GetCartItems(); //add oderdetail info to the db for each product purchased for (int i= 0; i < myOrderList.Count; i++) { //create new order detail object var myOrderDetail = new OrderDetail(); myOrderDetail.OrderId = myOrder.OrderId; myOrderDetail.Username = User.Identity.Name; myOrderDetail.ProductId = myOrderList[i] .ProductId; myOrderDetail.Quantity = myOrderList[i] .Quantity; myOrderDetail.UnitPrice = myOrderList[i] .Product.UnitPrice; // add orderdetail to db _db.OrderDetails.Add(myOrderDetail); _db.SaveChanges(); } // set order id Session["currentOrderId"] = myOrder.OrderId; //displayorder info List<Order> orderList = new List<Order>(); orderList.Add(myOrder); ShipInfo.DataSource = orderList; ShipInfo.DataBind(); //display order detail OrderItemList.DataSource = myOrderList; OrderItemList.DataBind(); } } else { Response.Redirect("CheckoutError.aspx?" + retMsg); } } }
protected void updateProductName_ServerValidate(object sender, ServerValidateEventArgs e) { //String connectionString = @"Data Source=DESKTOP-S3P3TBM\SQLEXPRESS;Initial Catalog=wingtiptoys.mdf;Integrated Security=True"; string connectionString = "Data Source=MYLAPTOP\\SQLEXPRESS;Database=wingtiptoys.mdf;Integrated Security=True"; string queryString = "SELECT * FROM dbo.Products WHERE ProductName = '" + DropDownUpdateProductName.SelectedItem.Text + "'"; using (SqlConnection connection = new SqlConnection(connectionString)) { SqlCommand command = new SqlCommand(queryString, connection); connection.Open(); SqlDataReader reader = command.ExecuteReader(); try { if (reader.Read()) { //update product record in database e.IsValid = true; System.Diagnostics.Debug.WriteLine(e.Value.ToString() + " Exists"); //update product in database using (var _db = new WingtipToys.Models.ProductContext()) { var myItem = (from c in _db.Products where c.ProductName == DropDownUpdateProductName.SelectedItem.Text select c).FirstOrDefault(); if (myItem != null) { System.Diagnostics.Debug.WriteLine(myItem.Description); //remove product from database _db.Products.Remove(myItem); _db.SaveChanges(); // Add product data to DB. AddProducts products = new AddProducts(); var product = new WingtipToys.Models.Product(); //update name, description, and price, but keep same category id and image file path for now bool addSuccess = products.AddProduct(DropDownUpdateProductName.SelectedItem.Text, UpdateProductDescription.Text, UpdateProductPrice.Text, DropDownUpdateCategory.SelectedValue, myItem.ImagePath); if (addSuccess) { // Reload the page. string pageUrl = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.Count() - Request.Url.Query.Count()); Response.Redirect(pageUrl + "?ProductAction=add"); } else { System.Diagnostics.Debug.WriteLine("Unable to add new product to database."); } } else { System.Diagnostics.Debug.WriteLine("Unable to locate product."); } } } else { //Throw validation error because product does not exist and cannot be updated e.IsValid = false; System.Diagnostics.Debug.WriteLine(e.Value.ToString() + " Does not exist"); } } finally { reader.Close(); } } }
protected virtual void Dispose(bool disposing) { if (!disposedValue) { if (disposing) { if (_db != null) { _db.Dispose(); _db = null; } } // TODO: free unmanaged resources (unmanaged objects) and override a finalizer below. // TODO: set large fields to null. disposedValue = true; } }
public IQueryable <Product> GetProducts( [QueryString("id")] int?categoryId, [RouteData] string categoryName) { var _db = new WingtipToys.Models.ProductContext(); bool isIntel = false; bool isAmd = false; ShoppingCartActions actions = new ShoppingCartActions(); List <CartItem> items = actions.GetCartItems(); List <Product> products = new List <Product>(); foreach (CartItem item in items) { products.Add(_db.Products.SingleOrDefault(Product => Product.ProductID == item.Product.ProductID)); } //Filtere nach Mainboards List <Product> mainboards = new List <Product>(); foreach (Product product in products) { if (product.CategoryID == 1) { mainboards.Add(product); } } IQueryable <Product> query = _db.Products; query = query.Where(p => p.CategoryID == 2); if (mainboards.Any()) { foreach (Product mainboard in mainboards) { if (mainboard.isIntel) { isIntel = true; } if (mainboard.isAmd) { isAmd = true; } } if (isIntel == false && isAmd == true) { query = query.Where(p => p.isAmd == true); } else if (isIntel == true && isAmd == false) { query = query.Where(p => p.isIntel == true); } else if (isIntel == false && isAmd == false) { query = query.Where(p => p.isIntel == false); query = query.Where(p => p.isAmd == false); } //Falls beide true, dann einfach alles zurueckgeben } //if (categoryId.HasValue && categoryId > 0) //{ // query = query.Where(p => p.CategoryID == categoryId); //} //if (!String.IsNullOrEmpty(categoryName)) //{ // query = query.Where(p => // String.Compare(p.Category.CategoryName, // categoryName) == 0); //} return(query); }