asp.net 使用数据集设计器 访问数据中说过,要使Insert,Update,Delete查询可用,必须删除ObjectDataSource对象
属性DataObjectTypeName的值。下面要说的是,在不删除该值下使查询可用的方法。(由于之前在删除
DataObjectTypeName后Insert,Update,Delete查询一直调试不成功,于是诞生了如下使用方法。)

asp.net 使用数据集设计器 访问数据相同的,首先要使用数据集设计器创建DataSet并修改好TableAdapter的Insert,Update,Delete查询。然后创建两个类,一个是继承TableAdapter的DataAdapter类,一个是用于DataObjectTypeName的普通类。示例代码如下:

public class ProductsAdapter : DataSet1TableAdapters.ProductsTableAdapter
{
 public ProductsAdapter()
 {
  //
  //TODO: 在此处添加构造函数逻辑
  //
 }

    public int Insert(Product product)
    {
        return base.Insert(product.SerialNum, product.ProductName, product.ClassName, product.ShortPic, product.Pic);
    }

    public int Update(Product product)
    {
        return base.Update(product.SerialNum, product.ProductName, product.ClassName, product.ShortPic, product.Pic, product.Id);
    }

    public int Delete(Product product)
    {
        return base.Delete(product.Id);
    }
}

public class Product
{
    private Guid id;
    public Guid Id
    {
        get { return id; }
        set { id = value; }
    }

    private string serialNum;
    public string SerialNum
    {
        get { return serialNum; }
        set { serialNum = value; }
    }

    private string productName;
    public string ProductName
    {
        get { return productName; }
        set { productName = value; }
    }

    private string className;
    public string ClassName
    {
        get { return className; }
        set { className = value; }
    }

    private string shortPic;
    public string ShortPic
    {
        get { return shortPic; }
        set { shortPic = value; }
    }

    private string pic;
    public string Pic
    {
        get { return pic; }
        set { pic = value; }
    }
}

最后还需要检查ObjectDataSource对象的DataObjectTypeName属性和TypeName属性的值。在上例中,DataObjectTypeName=Product,TypeName=ProductsAdapter