在我的 ASP.NET MVC & Entity Framework 應用程式中,我將我的資料庫表列創建Approved_Date為可以為空。
public DateTime? Approved_Date { get; set; }
然后,當我將資料呼叫到報告時,我創建了一個視圖模型并創建了屬性,
public DateTime ApprovedDateDM { get; set; }
在查詢中,我無法將Approved_Date資料庫表中的值分配給視圖模型ApprovedDateDM。我收到一個錯誤
無法將型別“type1”隱式轉換為“type2”。存在顯式轉換(您是否缺少演員表?)
select new SuspensApprovedList {
ApprovedDateDM = pa.Approved_Date, //Error
ApprovedDateFM = se.FinanceApprovedDate, //Error
ApproverDM = ae.EmpName,
ApproverDessignationDM = ad.Designation,
ApproverDessignationFM = d.Designation,
ApproverFM = fe.EmpName,
}).ToList();
我可以簡單地將視圖模型屬性更改為可為空并解決問題,但是當我將此視圖模型資料傳遞給 Crystal Report 時,我收到另一個錯誤,即 Crystal Report 不允許為空值。
有沒有什么辦法解決這一問題?
uj5u.com熱心網友回復:
嘗試這樣的事情
select new SuspensApprovedList {
ApprovedDateDM = pa.Approved_Date.HasValue?pa.Approved_Date : DateTime.MinValue, //or any default value you prefer.
ApprovedDateFM = pa.FinanceApprovedDate.HasValue?pa.FinanceApprovedDate: DateTime.MinValue,
ApproverDM = ae.EmpName,
ApproverDessignationDM = ad.Designation,
ApproverDessignationFM = d.Designation,
ApproverFM = fe.EmpName,
}).ToList();
或者你可以使用
select new SuspensApprovedList {
ApprovedDateDM = pa.Approved_Date.GetValueOrDefault(), // You can pass the default value also like GetValueOrDefault(defaultDate)
ApprovedDateFM = pa.FinanceApprovedDate.GetValueOrDefault(),
ApproverDM = ae.EmpName,
ApproverDessignationDM = ad.Designation,
ApproverDessignationFM = d.Designation,
ApproverFM = fe.EmpName,
}).ToList();
uj5u.com熱心網友回復:
public DateTime? ApprovedDateDM { get; set; }
也許你的模型應該是這樣的
-- 我知道我應該評論它,但我的聲譽不到 50
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/403440.html
標籤:
上一篇:.NET物件到字串
下一篇:在需要時解決承諾
