/ / AddDays nie działa w MVC4? [duplikat] - c #, asp.net-mvc-4

AddDays nie działa w MVC4? [duplikat] - c #, asp.net-mvc-4

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 № 1

Od 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);