您的位置:首页 > 大数据 > 人工智能

基于RIA的多层应用(二)--domainDataSource 操作

2011-01-20 21:25 288 查看
(一)增删改查操作

using Silverlight40.Web.Model;
using System.ServiceModel.DomainServices.Client;

namespace Silverlight40.WCFRIAServices
{
public partial class DomainDataSourceDemo : Page
{
public DomainDataSourceDemo()
{
InitializeComponent();
}

protected override void OnNavigatedTo(NavigationEventArgs e)
{
// DomainDataSource.SubmitChanges() - 提交数据的变化
// DomainDataSource.SubmittingChanges - SubmitChanges() 执行前所触发的事件
// DomainDataSource.SubmittedChanges - SubmitChanges() 执行后所触发的事件
// DomainDataSource.Load() - 加载查询结果

productDomainDataSource.SubmittingChanges += new EventHandler<SubmittingChangesEventArgs>(productDomainDataSource_SubmittingChanges);
productDomainDataSource.SubmittedChanges += new EventHandler<SubmittedChangesEventArgs>(productDomainDataSource_SubmittedChanges);
}

private void productDomainDataSource_LoadedData(object sender, LoadedDataEventArgs e)
{
if (e.HasError)
{
System.Windows.MessageBox.Show(e.Error.ToString(), "Load Error", System.Windows.MessageBoxButton.OK);
e.MarkErrorAsHandled();
}
}

private void btnSave_Click(object sender, RoutedEventArgs e)
{
productDomainDataSource.SubmitChanges();
}

void productDomainDataSource_SubmittingChanges(object sender, SubmittingChangesEventArgs e)
{
MessageBox.Show("Submitting");
}

void productDomainDataSource_SubmittedChanges(object sender, SubmittedChangesEventArgs e)
{
if (e.HasError)
{
MessageBox.Show(e.Error.ToString());
}
else
{
MessageBox.Show("Submitted");
productDomainDataSource.Load();
}
}

private void btnAdd_Click(object sender, RoutedEventArgs e)
{
// DomainDataSource.DomainContext - 数据上下文对象 [System.ServiceModel.DomainServices.Client.DomainContext 类型]
// DomainContext.EntityContainer - 数据上下文对象中的全部实体 [System.ServiceModel.DomainServices.Client.EntityContainer 类型]
// EntityContainer.GetEntitySet<T>() - 获取指定类型的实体数据

EntitySet<Product> products = productDomainDataSource.DomainContext.EntityContainer.GetEntitySet<Product>();
Product product = new Product();
product.ProductName = txtProductName4Add.Text;
product.CategoryID = 1;
product.SupplierID = 1;
products.Add(product);

productDomainDataSource.SubmitChanges();
}

private void btnDelete_Click(object sender, RoutedEventArgs e)
{
EntitySet<Product> products = productDomainDataSource.DomainContext.EntityContainer.GetEntitySet<Product>();
Product product = dataGrid.SelectedItem as Product;
products.Remove(product);

productDomainDataSource.SubmitChanges();
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐