数据表中的日期格式问题或其他方式 [英] date format issue in datatable or another way
本文介绍了数据表中的日期格式问题或其他方式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
if (dtProcedureDocs!= null )
{
DataTable dt = GetProcedureDocssDatatable();
string DocTitleID = lstofWF.Where(o = > o.FName == 文件标题) .Select(s = > s.FID).FirstOrDefault()。ToString();
string DocCatID = lstofWF.Where(o = > o.FName == 文档类别)。选择(s = > s.FID).FirstOrDefault()。ToString();
foreach (DataRow sRow in dtProcedureDocs.Rows)
{
DataRow dr = dt.NewRow();
dr [ 名称] = sRow [ 名称];
dr [ 文件标题] = sRow [DocTitleID];
dr [ 文档类型] = sRow [DocCatID];
dr [ 所有者] = sRow [ OwnerGuid]。ToString();
dr [ 创建者] = sRow [ CreatedByGuid]。ToString();
dr [ 创建日期] = 字符串 .Format( {0:M / d / yyyy} ,sRow [ CreatedDate]。ToString());
dr [ 修改者] = sRow [ ModifiedByGuid]。ToString();
dr [ 当前版本] = sRow [ OwnerGuid]。ToString();
objTemplatesHelper.InsertRowInDocumentTable(table,dr);
}
}
private DataTable GetProcedureDocssDatatable()
{
DataTable dt = new DataTable();
dt.Columns.Add( 名称, typeof ( string ));
dt.Columns.Add( 文件标题, typeof ( string ));
dt.Columns.Add( 文档类型, typeof ( string ));
dt.Columns.Add( 所有者, typeof ( string ));
dt.Columns.Add( 创建者, typeof ( string ));
dt.Columns.Add( 创建日期, typeof (串跨度>));
dt.Columns.Add( 修改者, typeof ( string ));
dt.Columns.Add( 当前版本, typeof ( string ));
return dt;
}
Q1我在这里添加的主要内容是dtProcedureDocs来自DB&我在MSWORD中导出值,输出不是那样给我 [dd / mm / yyyy]
- -------------------------------------------------- -----------------------------------------
Q2如果我改变创建日期的数据类型到日期时间如下,,,那么我如何在上面的代码中格式化?
private DataTable GetProcedureDocssDatatable()
{
DataTable dt = new DataTable();
dt.Columns.Add( 名称, typeof ( string ));
dt.Columns.Add( 文件标题, typeof ( string ));
dt.Columns.Add( 文档类型, typeof ( string ));
dt.Columns.Add( 所有者, typeof ( string ));
dt.Columns.Add( 创建者, typeof ( string ));
dt.Columns.Add( 创建日期, typeof (datetime));
dt.Columns.Add( 修改者, typeof ( string ));
dt.Columns.Add( 当前版本, typeof ( string ));
return dt;
}
解决方案
Ali_100,从这里开始:数据类型(C#) [ ^ ]。更多信息:日期数据类型 [ ^ ]
请记住: 日期是日期,字符串是字符串!
如果要存储日期,则需要使用日期而不是字符串数据类型。当然,您始终可以从字符串中解析日期,如下所述: http://msdn.microsoft。 com / en-us / library / ch92fbc1.aspx [ ^ ] ...
我通过链接完成了
点击 块引用>
if (dtProcedureDocs != null) { DataTable dt = GetProcedureDocssDatatable(); string DocTitleID = lstofWF.Where(o => o.FName == "Document Title").Select(s => s.FID).FirstOrDefault().ToString(); string DocCatID = lstofWF.Where(o => o.FName == "Document Category").Select(s => s.FID).FirstOrDefault().ToString(); foreach (DataRow sRow in dtProcedureDocs.Rows) { DataRow dr = dt.NewRow(); dr["Name"] = sRow["Name"]; dr["Document Title"] = sRow[DocTitleID]; dr["Document Type"] = sRow[DocCatID]; dr["Owner"] = sRow["OwnerGuid"].ToString(); dr["Created By"] = sRow["CreatedByGuid"].ToString(); dr["Created Date"] = String.Format("{0:M/d/yyyy}", sRow["CreatedDate"].ToString()); dr["Modified By"] = sRow["ModifiedByGuid"].ToString(); dr["Current Version"] = sRow["OwnerGuid"].ToString(); objTemplatesHelper.InsertRowInDocumentTable(table, dr); } } private DataTable GetProcedureDocssDatatable() { DataTable dt = new DataTable(); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Document Title", typeof(string)); dt.Columns.Add("Document Type", typeof(string)); dt.Columns.Add("Owner", typeof(string)); dt.Columns.Add("Created By", typeof(string)); dt.Columns.Add("Created Date", typeof(string)); dt.Columns.Add("Modified By", typeof(string)); dt.Columns.Add("Current Version", typeof(string)); return dt; }
Q1 The main things i added here, dtProcedureDocs was fetched from DB & I am exporting the values in MSWORD,the output is not giving me like that ["dd/mm/yyyy"]
---------------------------------------------------------------------------------------------
Q2 If I change the datatype of created date to date time like below,,,then how can i format in the above code?
private DataTable GetProcedureDocssDatatable() { DataTable dt = new DataTable(); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Document Title", typeof(string)); dt.Columns.Add("Document Type", typeof(string)); dt.Columns.Add("Owner", typeof(string)); dt.Columns.Add("Created By", typeof(string)); dt.Columns.Add("Created Date", typeof(datetime)); dt.Columns.Add("Modified By", typeof(string)); dt.Columns.Add("Current Version", typeof(string)); return dt; }解决方案Ali_100, start here: Data Types (C#)[^]. More here: Date Data Type[^]
Remember: Date is a date, string is a string!
If you want to store dates, you need to use date not string data type. Of course, you can always parse date from string, as is described here: http://msdn.microsoft.com/en-us/library/ch92fbc1.aspx[^]...
I did it by the link
Click
这篇关于数据表中的日期格式问题或其他方式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文