用过DELPHI的都知道,在Delphi中,可以直接把adoDataset的字段拉到窗体上,DELPHI会自动产生一个DBEDIT,并且绑定到数据表的指定字段.当用户在文本框中输入或修改完数据后,直接用一个POST数据就进入了数据库.
  那么C#中有没有类似功能呢?
  我尝试这样做:          txtDONO.DataBindings.Clear();
            txtDONO.DataBindings.Add("Text", dsSord.Tables[0], "DONO");    //.BindableComponent = dsSord.Tables[0].DataSet["DONO"];确实,这样是把数据库中的记录显示到了文本框中,但是,我在文本框中修改完记录后,用以下语句保存:
            daSord.Update(dsSord.Tables[0] );
再一看数据库,却没有改变.
   综上而言,我希望能有办法做到:
  1\自动绑定数据字段到文件框;
  2\修改文本框里的数据后,运行少量语句能把数据保存到数据库;
  3\最好能像DELPHI一样,绑定好数据后,C#能自动设置文本框的最大可输入字符(数值等)的长度、数据类型(DELPHI是有此功能的);
  4\不要用Insert into 那样子一个个字段地去写(如果有50个字段,要一个个去写,还要判断数据有效性,那工作量不得了了)。
  请各位大虾帮忙解决一下,能提供源码更佳。
   若要发邮件请发至:
  EMail: [email protected]

解决方案 »

  1.   

    单要进行绑定,应该是没有问题的。
    1.可以实现
    2.可以实现
    3.这个不行,需要自己开发
    4.个人认为有效性验证是少不了的,不过如果是ASP.NET ,应该已经有一些成熟的验证机制,
    在WinForm中,可以去看看Enterprise Library 3.1中的Validation Application Block
      

  2.   

    上楼的大虾,关于第二点,我的意思是可不可以用一条update或post之类的语句就搞定?
    DELPHI是可以用POST或updatebatch之类的语句实现的.很简洁.
      

  3.   

    大虾 你这 POST updatebatch 要怎么写呢