1
嗨 我开发了一个使用强类型数据集的.net framework 3.5应用程序。 有没有办法以编程方式更改tableadapter的源表? thnx以编程方式更改.net强类型数据集中的表名称
嗨 我开发了一个使用强类型数据集的.net framework 3.5应用程序。 有没有办法以编程方式更改tableadapter的源表? thnx以编程方式更改.net强类型数据集中的表名称
有几种方法可以做到这一点。首先,您可以添加一个从不同表格中提取的新查询,然后执行该查询的方法,只要列匹配它就可以工作。
如果您需要动态更改其中一个语句,您可以访问表适配器的命令集合,但它是受保护的,所以最简单的方法是创建一个部分类来扩展由设计师。一旦你这样做,你可以添加你自己的方法来返回数据。您可以使用adapter.CommandCollection [0] .CommandText来获取并设置所创建的默认GetData命令的SQL。一旦你这样做,你可以改变它,清除参数,添加新的参数或你想做的任何事情,然后你用改变的SQL设置CommandText,并且调用GetData或任何你命名的命令和它将像往常一样执行并返回。
下面是一个代码示例:
using System.Data.SqlClient;
namespace DataTableAdapters
{
public partial class Data_ItemTableAdapter
{
public Data.Data_ItemDataTable GetDynamicExample(string SearchValue)
{
using (Data_ItemTableAdapter a = new Data_ItemTableAdapter())
{
SqlCommand cmd = a.CommandCollection[0];
cmd.Parameters.Clear();
string SQL = @"Select Data_Item_ID, Data from Data_Item where
SearchValue = @SearchValue";
cmd.CommandText = SQL;
cmd.Parameters.AddWithValue("@SearchValue", SearchValue);
return a.GetData();
}
}
}
}