[英]Changing DataType of column in DataTable from DateTime to String
[英]How to sort datatable by column with datetime datatype
我所做的如下
dtClaim.DefaultView.Sort = "TransactionDate asc";
dtClaim = dtClaim.DefaultView.ToTable();
ViewState["dtClaim"] = dtClaim;
這是應用排序之前數據表中數據的屏幕截圖
但是在使用上述代碼后,我也無法使用“ TransactionDate”對數據進行排序
編輯
在這里,我展示了我如何准備此數據表
DataTable dtClaim = new DataTable();
dtClaim = (DataTable)ViewState["dtClaim"];
DataRow drClaim = dtClaim.NewRow();
drClaim["ClaimId"] = count + 1;
drClaim["TextileClaimApplicationId"] = ViewState["TextileClaimApplicationId"].ToString();
drClaim["BankId"] = ViewState["TextileClaimApplicationId"].ToString();
drClaim["BankName"] = ViewState["TextileClaimApplicationId"].ToString();
drClaim["SectorId"] = ViewState["TextileClaimApplicationId"].ToString();
drClaim["IsDisbursment"] = rblIsDisbursment.SelectedValue;
drClaim["TransactionDate"] = txtDisbursementDate.Text == "" ? Convert.ToDateTime(txtRepaymentDate.Text, System.Globalization.CultureInfo.GetCultureInfo("en-GB").DateTimeFormat) : Convert.ToDateTime(txtDisbursementDate.Text, System.Globalization.CultureInfo.GetCultureInfo("en-GB").DateTimeFormat);
drClaim["DisbursementAmount"] = txtDisbursementAmount.Text == "" ? Convert.ToDecimal("0") : Convert.ToDecimal(txtDisbursementAmount.Text);
drClaim["RepaymentPrincipleAmount"] = txtRepaymentPrincipleAmount.Text == "" ? Convert.ToDecimal("0") : Convert.ToDecimal(txtRepaymentPrincipleAmount.Text);
drClaim["RepaymentOtherAmount"] = txtRepaymentOtherAmount.Text == "" ? Convert.ToDecimal("0") : Convert.ToDecimal(txtRepaymentOtherAmount.Text);
dtClaim.Rows.Add(drClaim);
dtClaim.DefaultView.Sort = "TransactionDate";
dtClaim = dtClaim.DefaultView.ToTable();
ViewState["dtClaim"] = dtClaim;
為了使我的代碼將DataTable值識別為DateTime,我必須在創建行時設置其數據類型。 (我將這個DataTable用作GridView的數據源,並且很難對其進行排序。)
以前我有
DataTable dt = new DataTable();
dt.Columns.Add("ID");
dt.Columns.Add("StartDate");
我將其更改為
dt.Columns.Add("StartDate", typeof(DateTime));
在設置列類型之前,無法將要插入該列的類型更改為DateTime。
https://msdn.microsoft.com/en-us/library/hfx3s9wd(v=vs.110).aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.