请教高人
界面层的 dataset 如何通过逻辑层 保存到数据库中,请详细举例,谢谢,不慎感激

解决方案 »

  1.   

    DAL与具体的数据库操作分开
    Model,实现业务实体。
    IDAL,实现接口。
    DALFactory,返回程序集的指定类的实例。
    BLL,调用DALFactory,得到程序集指定类的实例,完成数据操作方法
    看看petshop,linq to sql
      

  2.   

    首先LZ应该在DAL层定义一个保存方法public int SaveDataSet(DateSet myset)
    {
       遍历这个myset的每一行,并且得到一条sql语句
       SaveToDB(sqls);--将这个sql语句集传到SaveToDB这个方法中执行
    }
    public int SaveToDB(Ilist<string> sql)
    {
      事物开始
      执行
      事物结束
    }BLL层,添加DAL引用,然后定义方法public int SaveDataSet(DateSet myset)

      DAL.SaveDataSet(myset);
    }然后在界面层也写一个public int SaveDataSet(DateSet myset)

      BLL.SaveDataSet(myset);
      

  3.   

    楼上 的 写法虽然 能正确运行,但是是完全错误的
    Dal   这个接口没问题,有多种实现手段,可以批量提交
    public int SaveDataSet(DateSet myset)
    {
    }
    BLL层  应该按业务名称取名 比如
    public void Save人员列表((DateSet 人员列表)
    {
    }
    public string 检查人员列表((DateSet 人员列表)
    {
    //返回检查错误信息
    }UI层 应该 按MVC模式处理相应的事件
    public void Handle人员列表保存事件()
    {
    }