[英]Calling a parameterized stored procedure using WCF and LINQ to SQL
如何从WCF
服务中调用参数化存储过程usp_Get_Products
? 我尝试在不使用任何参数的情况下调用它可以正常工作,但是我不知道如何从About.xaml.cs
文件About.xaml.cs
textbox
值作为参数About.xaml.cs
。
Service.svc.cs文件
public List<Product> GetProducts()
{
ProductDataClassDataContext db = new ProductDataClassDataContext();
var products = db.usp_Get_Products();
return products.ToList();
}
视图/About.xaml.cs文件
private void OnSearchProductClick(object sender, RoutedEventArgs e)
{
ServiceReference1.Service1Client webService = new ServiceReference1.Service1Client();
webService.GetProductsCompleted += new EventHandler<GetProductsCompletedEventArgs>(webService_GetProductsCompleted);
webService.GetProductsAsync();
txtblcName.Text = txtName.Text; //Send this as parameter to usp_Get_Products
}
public void webService_GetProductsCompleted(object sender, ServiceReference1.GetProductsCompletedEventArgs e)
{
ProductGrid.ItemsSource = e.Result; //Binding Datagrid
}
调用存储过程时,如何从xaml.cs文件中发送txtName.Text
作为参数? 我知道我缺少一些概念,我是WCF的新手,而且我从未从事过Silverlight。
您确定存储过程接受参数吗? 您也可以发布您的ProductDataClassDataContext。 理想情况下,您应该修改服务合同以接受参数,如果您不想这样做,可以对产品列表进行过滤,例如
var products = await webService.GetProductsAsync();
var filteredProduct = products.Where(item=> item.Name == txtName.Text);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.