日期时间代码
开发工具与关键技术:vs
作者:张世灿
撰写时间:2019-6-1
做到以下这段简单的日期时间字符串到底需要多少代码呢?
首先,在数据库建表的时候,保存类型选择datetime,但是datetime有两个,我们选择datetime2(0),(datetime2(0)是改过的,数据库自定义为datetime2(7))
要是直接选择datetime的话,在下面的Tostring转换表格上就会显示一条长长的没有横杠的字符串,这种格式就会让人有点不习惯。
数据库都弄完之后就到了查询语句,把需要的字段写入select new自定义类中,以string类型保存,写一个新的字段让它等于旧的字段,然后用ToString转换类型。
最后到表格渲染那边就不能写数据库的那个字段了,要写自定义类里的那个新的字段
{ title: ‘申请时间’, field: ‘NewApplyTime’, align: ‘center’ },
到这里算是完成了,但是万一数据有错呢?要修改呢?修改的话就要在控制器那边再写一个修改数据回填的方法和一个修过的方法,而对应的CSS那边也是同样的两个。
如果想要用模态窗体修改数据回填的话,就要换一种转换类型了,控制器那边就要这么写。
dbVideo.ApplyTime = Convert.ToDateTime(NewApplyTime);
表的自定义名.表转换字段 = Convert.ToDateTime(新字段);
修改的方法,要把需要改的查出来才能改
public ActionResult Update(int DetailedID, string NewApplyTime,)
{
ReturnJson msg = new ReturnJson();
if ( !string.IsNullOrEmpty(NewApplyTime) )
{
B_UserDetailed dbDetailed = (from tbDetailed in myModel.B_UserDetailed
where tbDetailed.DetailedID == DetailedID
select tbDetailed).Single();
dbDetailed.IDNumber = NewApplyTime;
myModel.Entry(dbDetailed).State = System.Data.Entity.EntityState.Modified;
if (myModel.SaveChanges() > 0)
{
msg.State = true;
msg.Text = “修改成功!”;
}
else
{
msg.State = false;
msg.Text = “修改失败!”;
}
return Json(msg, JsonRequestBehavior.AllowGet);
}
而CSS那边就是要调用控制器那边的两个方法
//打开修改模态窗体
function saveDelete(VideoID) {
$("#frmStuInfor input[type=‘reset’]").click();//重置表单
$("#modStudent1").modal();//弹出模态窗体
$.get(“SelectExamineeBy?VideoID=” + VideoID,
function (data) {
$("#DetailedID").val(data[0].DetailedID);
$(“input[name=‘NewApplyTime’]”).val(data[0].NewApplyTime);
});
}
//确定修改
function saveStuInfor() {
var DetailedID = $("#DetailedID").val();
var NewApplyTime = $(“input[name=‘NewApplyTime’]”).val();
$.get("/Attestation/Video/Update", {
DetailedID: DetailedID,
NewApplyTime: NewApplyTime,
},
function (msg) {//键值对
if (msg.State == true) {
layer.alert(msg.Text);
$("#modStudent1").modal(‘hide’);
TabStudent.reload();
} else {
layer.alert(msg.Text);
}
});
}
到这才算全部完成,别问我为什么写这么多,这叫未雨绸缪。