Hi, I've got a DropDown list which is populated here.
with the use of a break in the code there is a value of 4 for shippingInfo.ShippingID.ToString()
if (addressOK) //&& cardOK
{
int shippingRegionId = int.Parse(Profile.ShippingRegion);
List<ShippingInfo> shippingInfoData =
CommerceLibAccess.GetShippingInfo(shippingRegionId);
foreach (ShippingInfo shippingInfo in shippingInfoData)
{
shippingSelection.Items.Add(
new ListItem(shippingInfo.ShippingType,
shippingInfo.ShippingID.ToString()));
}
shippingSelection.SelectedIndex = 0;
}
then when the checkout button is selected here:
protected void placeOrderButton_Click(object sender, EventArgs e)
{
// store the total amount
decimal amount = ShoppingCartAccess.GetTotalAmount();
// get shippingId or default to 0
int shippingId = 0;
int.TryParse(shippingSelection.SelectedValue, out shippingId);
string shippingRegion =
(HttpContext.Current.Profile as ProfileCommon).ShippingRegion;
int taxId;
switch (shippingRegion)
{
case "2":
taxId = 1;
break;
default:
taxId = 2;
break;
}
// create the order and store the order id
string orderId =
ShoppingCartAccess.CreateCommerceLibOrder(shippingId, taxId);
OrderProcessor processor = new OrderProcessor(orderId);
processor.Process();
Response.Redirect("OrderPlaced.aspx");
}
with the use of a breakpoint the shippingId is 0 although a selection is made. Therefore I get an error
The INSERT statement conflicted with the FOREIGN KEY constraint "FK_Orders_Shipping". The conflict occurred in database "firebyte", table "dbo.Shipping", column 'ShippingID'.