[英]What is the best way to display date time using Linq to Datatable?
我有一個 linq select 一些列,其中包含數據表的日期。 我正在使用 ASP MVC 5 和 Datatble。
我真的需要日期時間。 我已經顯示字符串並且沒有問題。 但是當我嘗試顯示原始日期時間時,我得到了這個 output
/Date(1569366000000)/ /Date(1569397607057)/
這是我的代碼
var IQueryabletimesheet = (from expense in _context.ExpenseModel
join expenseaudittb in _context.ExpenseAuditTB on expense.ExpenseID equals expenseaudittb.ExpenseID
join project in _context.ProjectMaster on expense.ProjectID equals project.ProjectID
join registration in _context.Registration on expense.UserID equals registration.RegistrationID
join AssignedRolesAdmin in _context.AssignedRoles on registration.RegistrationID equals AssignedRolesAdmin.RegistrationID
where AssignedRolesAdmin.AssignToAdmin == UserID && expenseaudittb.Status == 3
select new ExpenseModelView
{
ExpenseID = expense.ExpenseID,
ProjectName = project.ProjectName,
RequestBy = registration.Name,
FromDate = expense.FromDate.Value,
ProcessedDate = expenseaudittb.ProcessedDate,
ExpenseStatus = expense.ExpenseStatus == 1 ? "Submitted" : expense.ExpenseStatus == 2 ? "Approved" : expense.ExpenseStatus == 4 ? "Pending Final Approval" : "Rejected",
PurposeorReason = expense.PurposeorReason,
TotalAmount = expense.TotalAmount,
VoucherID = expense.VoucherID,
});
if (!(string.IsNullOrEmpty(sortColumn) && string.IsNullOrEmpty(sortColumnDir)))
{
IQueryabletimesheet = IQueryabletimesheet.OrderBy(sortColumn + " " + sortColumnDir);
}
if (!string.IsNullOrEmpty(Search))
{
//IQueryabletimesheet = IQueryabletimesheet.Where(m => m.FromDate == Search);
}
return IQueryabletimesheet;
我通過視圖中的 ajax 調用獲得結果。 這沒有問題,除了顯示上述錯誤的日期時間列
我需要像我在 SQL 服務器 08/10/2019 10:43 中看到的東西
要按預期顯示,您必須將日期轉換為字符串。 前任。 string.Format(“{0:G}”,費用.FromDate.Value)。
var IQueryabletimesheet = (from expense in _context.ExpenseModel
join expenseaudittb in _context.ExpenseAuditTB on expense.ExpenseID equals expenseaudittb.ExpenseID
join project in _context.ProjectMaster on expense.ProjectID equals project.ProjectID
join registration in _context.Registration on expense.UserID equals registration.RegistrationID
join AssignedRolesAdmin in _context.AssignedRoles on registration.RegistrationID equals AssignedRolesAdmin.RegistrationID
where AssignedRolesAdmin.AssignToAdmin == UserID && expenseaudittb.Status == 3
select new ExpenseModelView
{
ExpenseID = expense.ExpenseID,
ProjectName = project.ProjectName,
RequestBy = registration.Name,
FromDate = string.Format ("{0:G}", expense.FromDate.Value),
ProcessedDate = expenseaudittb.ProcessedDate,
ExpenseStatus = expense.ExpenseStatus == 1 ? "Submitted" : expense.ExpenseStatus == 2 ? "Approved" : expense.ExpenseStatus == 4 ? "Pending Final Approval" : "Rejected",
PurposeorReason = expense.PurposeorReason,
TotalAmount = expense.TotalAmount,
VoucherID = expense.VoucherID,
});
我找到了解決我的問題的方法。 請注意,這可能不是唯一的解決方案,但正是我想要的。 解決方案是使用 moment.js,這就是我呈現列的方式,一切正常。 我希望保留原始數據及其類型(日期時間)。
{
title: "ProcessedDate",// name
render: function (data, type, row)
{//data
return moment(row.ProcessedDate).format('DD/MM/YYYY hh:mm:ss');
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.