如何将ObservableCollection中的数据存储到SQL数据库中?

时间:2012-06-20 14:41:56

标签: c# wpf wcf windows-phone-7

我在ObservableCollection中有一些记录。

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中并将它们插入数据库?

1 个答案:

答案 0 :(得分: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);
}

您的服务可能有一种方法可以让您一次传入多个产品,这比进行所有这些单独的往返更有效,但如果没有关于代理类中成员的更多信息,则无法确定