本文整理汇总了C#中WingtipToys.Models.ProductContext.SaveChanges方法的典型用法代码示例。如果您正苦于以下问题:C# ProductContext.SaveChanges方法的具体用法?C# ProductContext.SaveChanges怎么用?C# ProductContext.SaveChanges使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WingtipToys.Models.ProductContext
的用法示例。
在下文中一共展示了ProductContext.SaveChanges方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddProduct
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;
}
示例2: RemoveProductButton_Click
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.";
}
}
示例3: Page_Load
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);
}
}
}
示例4: UpdateItem
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);
}
}
}
示例5: RemoveItem
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);
}
}
}
示例6: Page_Load
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);
}
}
}
示例7: UpdateItem
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;
}
}
}
示例8: RemoveItem
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;
}
}
}
示例9: CheckoutConfirm_Click
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");
}