当前位置:编程学习 > C#/ASP.NET >>

不清楚这个方法是用来做什么的

  private static void TransData_AddT_New(string NewTitle, string NewContent, string NewCome, int Click, int NewID, int UserID, Models.T_New t_New)
        {

            try { if (NewTitle.ToString() == "0001-1-1 0:00:00") t_New.NewTitle = null; else t_New.NewTitle = NewTitle; }
            catch { }
            try { if (NewContent.ToString() == "0001-1-1 0:00:00") t_New.NewContent = null; else t_New.NewContent = NewContent; }
            catch { }
            //try{if (NewTime.ToString() == "0001-1-1 0:00:00") t_New.NewTime = null; else t_New.NewTime = NewTime;}catch{}
            try { if (NewCome.ToString() == "0001-1-1 0:00:00") t_New.NewCome = null; else t_New.NewCome = NewCome; }
            catch { }
            try { if (Click.ToString() == "0001-1-1 0:00:00") t_New.Click = null; else t_New.Click = Click; }
            catch { }
        }


如题 --------------------编程问答-------------------- 给实体赋值 --------------------编程问答-------------------- 貌似这四个值有可能被赋值为时间的最小值,所以做了一个出错检查

--------------------编程问答-------------------- 根据条件判断,然后给实体赋值
 try {
 if (NewTitle.ToString() == "0001-1-1 0:00:00") //如果newtitle的值等于0001-1-1 0:00:00
{
   t_New.NewTitle = null; //则给t_New.NewTitle赋空值
}
else  //反之则把传过来的参数值赋给t_New.NewTitle
{
   t_New.NewTitle = NewTitle; 
}
catch { }

下面的都一样, try {}catch{}是用来捕获异常的 --------------------编程问答-------------------- 晕,给实体赋值吗

NewTitle.ToString() == "0001-1-1 0:00:00") t_New.NewTitle = null; else t_New.NewTitle = NewTitle;

如果传进来的值是0001-1-1 0:00:00 就赋null值 --------------------编程问答-------------------- 找骂的代码...就凭一个string.ToString还try catch就该面壁去...

写这代码的要是学生说明不好好学习...要是不幸工作了,那是入错行了... --------------------编程问答-------------------- 先验证变量的值,再给给对象的属性赋值

不过真是很烂的写法 --------------------编程问答-------------------- 提交判断的语句,具体的实现内容,还是看文档或者是问别人吧。 --------------------编程问答-------------------- 这也要try 一下 --------------------编程问答-------------------- --------------------编程问答--------------------
引用 2 楼 amandag 的回复:
貌似这四个值有可能被赋值为时间的最小值,所以做了一个出错检查
嗯! 对头!! 统一处理时间溢出的错误;  --------------------编程问答-------------------- string NewTitle 
NewTitle.ToString() == "0001-1-1 0:00:00"  
--------------------编程问答-------------------- NewTitle.ToString() == "0001-1-1 0:00:00") t_New.NewTitle = null; else t_New.NewTitle = NewTitle;
如果时间为0001-1-1 0:00:00
那NewTitle就是只读
NewTitle赋null
否则
给 t_New.NewTitle 
赋值
NewTitle


--------------------编程问答--------------------
引用 10 楼 zhouwei7682719 的回复:
引用 2 楼 amandag 的回复:
貌似这四个值有可能被赋值为时间的最小值,所以做了一个出错检查
嗯! 对头!! 统一处理时间溢出的错误;
++ --------------------编程问答-------------------- 这代码真够给力的
String.ToString
if (NewTitle == "0001-1-1 0:00:00")
t_New.NewTitle = null;
else
....
如果是实体属性,就在get set里面写
吐血的try-catch
--------------------编程问答-------------------- 的确是挨骂的代码,姑且不说上面的string.tostring,try

单从语义上来说,那几个字段是时间格式,你就应该传时间类型 ,何必让人传啥new DateTime().ToString()

用的人不爽,你写这个代码的人也别扭啊

这种代码 DateTime? 可空时间就蛮好,既和dbnull兼容,你自己也好处理不是
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,