//发布订单16 ok public List<Order> PublishOrder(List<Commodity> commodityList, String userFrom) { List<Order> OrderList = new List<Order>(); Dictionary<String,int> SellerNameAndOderIDList = new Dictionary<string,int>(); //把商品按商家归类 foreach (Commodity commodity in commodityList) { if (!SellerNameAndOderIDList.Keys.Contains(commodity.UserName)) { SellerNameAndOderIDList.Add(commodity.UserName,0); } } //数据访存器 DatabaseAccess.DataClasses1DataContext DBAccessor = new DataClasses1DataContext(); //以卖家为单位插入订单,并返回订单号 foreach (String Seller in SellerNameAndOderIDList.Keys) { try { int OderID = DBAccessor.insertOrder(userFrom,Seller); SellerNameAndOderIDList[Seller] = OderID; } catch (Exception e) { } } //以订单号为单位插入商品 foreach (String SellerName in SellerNameAndOderIDList.Keys) { //订单 Order order = new Order(); try { foreach (Commodity commodity in commodityList) { if (commodity.UserName == SellerName) { DBAccessor.insertOrderCommodity(SellerNameAndOderIDList[SellerName], commodity.ID); order.userTo.UserName = SellerName; order.commodityList.Add(commodity);//加入订单的商品列表中 order.ID = SellerNameAndOderIDList[SellerName];//订单号 } } } catch (Exception e) { } OrderList.Add(order); } return OrderList; }