始终将默认日期(1/1/0001)插入数据库.需要正确插入的解决方案 [英] Always inserting default date(1/1/0001) to the database. need solution for proper insertion

查看:438
本文介绍了始终将默认日期(1/1/0001)插入数据库.需要正确插入的解决方案的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的winform有多个dtp,这是1个示例:

 私有  void  btnSave_Click(对象发​​件人,EventArgs e){
 //  DateTime datetimePicker1 = dtpOpened.Value; 
   dtpOpened.Value = DateTime.Today;} 


BLL层:

  public  DateTime OpenedDate
{获取; 设置; }
私有 MainCaseBL(DataRow dr):基本(dr)
{OpenedDate = dr.Field&DateTime>(" );} 


DAL层:

 公共 静态  void 保存(DateTime打开日期,...)
{数据库db = DatabaseFactory.CreateDatabase();
DbCommand dbCommand = db.GetStoredProcCommand(" );
db.AddInParameter(dbCommand," ,DbType.DateTime);
db.SetParameterValue(dbCommand," ,opendDate);} 



在调试保存时,我以1/1/0001 12:00:00 AM的形式返回值,而不是用户输入的今天的日期值.我究竟做错了什么?还是不做?感谢您的任何帮助,在此先感谢

解决方案

保存的代码正确无误.请让我知道用于检索数据库记录的代码.其中包含OpenedDate字段. /blockquote>

添加了我的BL类的实例,以完成dtp语法. DTP值现在可以正确保存.谢谢.


我没有将类实例用于日期时间选择器.我只有一个基本的dtp.date,它没有绑定到我的BLL对象.


My winform has multiple dtp''s, here is 1 example:

private void btnSave_Click(object sender, EventArgs e){
 //DateTime datetimePicker1 = dtpOpened.Value;
   dtpOpened.Value = DateTime.Today;}


BLL layer:

public DateTime OpenedDate 
		{ get; set; }
private MainCaseBL(DataRow dr) : base(dr)
{OpenedDate = dr.Field<DateTime>("OpenedDate");}


DAL layer:

public static void Save(DateTime openedDate,...)
{Database db = DatabaseFactory.CreateDatabase();
DbCommand dbCommand = db.GetStoredProcCommand("Case_Save");
db.AddInParameter(dbCommand, "@OpenedDate", DbType.DateTime);
db.SetParameterValue(dbCommand, "@OpenedDate", openedDate);}



While debugging Save, I get value back in form of 1/1/0001 12:00:00 AM, not today''s date value entered by user. What am I doing wrong? Or not doing? Any help is appreciated, thanks in advance

解决方案

The save code is correct.. Please let me know code for retrieving the database record.. which contains OpenedDate field.


added instance of my BL class to complete dtp syntax. DTP value saves correctly now. Thank you.


I was not using the class instance for my datetime picker. I only had a basic dtp.date that was not binding to my BLL objects.


这篇关于始终将默认日期(1/1/0001)插入数据库.需要正确插入的解决方案的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆