我要修改 ID=3 的那一条记录,
下面这段代码执行的时候没有错:
 
private void Button2_Click(object sender, EventArgs e)
{
    Configuration cfg 
= new Configuration();
    cfg.AddXmlFile(Server.MapPath(
"NHEntity/userinfo.hbm.xml"));
    ISession iS 
= cfg.BuildSessionFactory().OpenSession();
    ITransaction iT 
= iS.BeginTransaction();
    UserInfo ui 
= (UserInfo) iS.Load(typeof(UserInfo), 3);
    ui.Name 
= "August";
    ui.Sex 
= false;
    ui.Hit 
= 88;
    ui.Birthday 
= DateTime.Parse("1982-8-21");
    iS.Update(ui);
    iT.Commit();
    iS.Close();
}
 
 
但是,我又想把“Birthday”字段修改成“null”值,应该如何做?
如果你有CSDN帐户,也可以针对此问题参与回复,谢谢:
http://community.csdn.net/Expert/topic/4476/4476709.xml?temp=.384289
posted @ 2005-12-23 10:46 jeky 阅读(252) 评论(0) 编辑
下面这段代码没有出错,数据也能添加进去:

private void Button1_Click(object sender, EventArgs e)
{
    UserInfo ui 
= new UserInfo();
    ui.Name 
= "李彬";
    ui.Sex 
= true;
    ui.Hit 
= 86;
    ui.Birthday 
= DateTime.Parse("1983-10-1");

    Configuration cfg 
= new Configuration();
    cfg.AddXmlFile(Server.MapPath(
"NHEntity/userinfo.hbm.xml"));
    ISession vSession 
= cfg.BuildSessionFactory().OpenSession();
    vSession.Save(ui);
    vSession.Close();
}

但是,当我把“ui.Birthday”那一行注释掉后就会出错:
 

SqlDateTime 溢出。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
 
异常详细信息: System.Data.SqlTypes.SqlTypeException: SqlDateTime 溢出。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间。
 
---------
 
怎么解决?难道每次添加数据,都必须要把字段全部赋值?

posted @ 2005-12-23 10:37 jeky 阅读(355) 评论(1) 编辑