2012-06-20 125 views
0

我在ObservableCollection中有一些记录。如何将数据从ObservableCollection存储到SQL数据库中?

void proxy_AddPayNowOrderCompleted(object sender, AddPayNowOrderCompletedEventArgs e) 
{ 
    listBox1.ItemsSource = e.Result; 
    ObservableCollection<Product> Products = this.listBox1.ItemsSource as ObservableCollection<Product>; 
} 

我的产品实体将有prodid,prodname,prodrice。 ObservableCollection中会有很多这样的实体。我想将ObservableCollection中的所有记录保存到我的SQL数据库中。我正在使用此代码将一条记录保存到数据库中。

private void btn1_Click(object sender, RoutedEventArgs e) 
{ 
    proxy.AddPayNowOrderCompleted += new EventHandler<AddPayNowOrderCompletedEventArgs>(proxy_AddPayNowOrderCompleted); 
    proxy.AddPayNowOrderAsync(orderdate, prodid, orderprodname, orderprice, orderstatus, custemail, paymentdate); 
} 

如何将所有记录存储在ObservableCollection中并将它们插入到数据库中?

+0

@Steve Dog我编辑了我的编码,所以我不能使用proxy.AddPayNowOrderAsync来保存数据。 –

回答

2

像这样的东西应该工作:

ObservableCollection<Product> Products = this.listBox1.ItemsSource as ObservableCollection<Product>; 
proxy.AddPayNowOrderCompleted += new EventHandler<AddPayNowOrderCompletedEventArgs>(proxy_AddPayNowOrderCompleted); 
foreach (Product p in Products) 
{ 
    proxy.AddPayNowOrderAsync(p.orderdate, p.prodid, p.orderprodname, p.orderprice, p.orderstatus, p.custemail, p.paymentdate); 
} 

的服务可能有一个方法,可以让你在多个产品同时,这将远远超过使所有这些独立的往返更加高效传递,但不有关代理类中成员的更多信息,这是无法确定的。

相关问题