Cześć AddDays nie działa w MVC4?
public ActionResult customerid()
{
List<Customer> n = (from c in db.Customers where c.IsDeleted == false select c).ToList();
for (var i = 0; i < n.Count; i++)
{
var objCusCreatedDate=n[i].CreatedDate;
var objNextDate = objCusCreatedDate.AddDays(+120);
}
return View();
}
W tym kodzie otrzymuję błąd w pobliżu AddDays. proszę mi pomóc rozwiązać ten problem.
Błąd 1 ”System.Nullable „nie zawiera definicji„ AddDays ”i nie można znaleźć metody„ AddDays ”akceptującej pierwszy argument typu„ System.Nullable ”(czy brakuje dyrektywy używającej lub odwołania do zespołu?)
Odpowiedzi:
2 dla odpowiedzi № 1Od twojego pola CreatedDate
jest nieważne, musisz użyć właściwości Value
aby uzyskać aktualną datę:
var objCusCreatedDate=n[i].CreatedDate.Value;
var objNextDate = objCusCreatedDate.AddDays(120);
Możesz to zrobić tylko wtedy, gdy wiesz, że wszystkie daty zostaną wypełnione wartościami. W przeciwnym razie otrzymasz wyjątek.
Alternatywnie możesz użyć metody GetValueOrDefault
i określ wartość domyślną, której chcesz użyć, jeśli data jest null. W tym przykładzie wartość domyślna jest ustawiona na DateTime.Now
:
var objCusCreatedDate=n[i].CreatedDate.GetValueOrDefault(DateTime.Now);
var objNextDate = objCusCreatedDate.AddDays(120);
1 dla odpowiedzi nr 2
if(objCusCreatedDate.HasValue)
var objNextDate = objCusCreatedDate.Value.AddDays(+120);