Det är grymt många VB.NET/VBScript-funktioner jag saknar i C#.
Bland annat funktionerna Left() och Right(). Iofs går detta att lösa med Substring(). Men hur som helst, till mitt problem.
Jag har ett datum som jag vill jämföra med dagens datum.
Om datumet är samma vill jag skriva ut "idag", är det gårdagens datum ska "igår" skrivas ut.
Är det något annat datum skrivs bara datumet ut i sin helhet.
Det jag eftersöker är altså en motsvarelse till VB.NETs DateDiff(), fast i C#.
Någon som vet hur jag löser detta på smidigaste sätt?
switch(DateTime.Compare(DateTime.Now, OwnDate))
{
case -1 : // OmnDate > dagens datum
Response.Write(OwnDate);
break;
case 0 :
Response.Write("Idag"); // OmnDate == dagens datum
break;
case 1 :
Response.Write("Igår"); //OmnDate < dagens datum
break;
}
switch satsen kommer inte att fungera eftersom den bara kollar om dagensdatum är större eller mindre än det andra, inte hur många dagar.
Nä, det är inte någon C# version av DateDiff utan en (nu) funktion som möter trådskaparens beskrivning.
Jag har ett datum som jag vill jämföra med dagens datum.
Om datumet är samma vill jag skriva ut "idag", är det gårdagens datum ska "igår" skrivas ut.
Är det något annat datum skrivs bara datumet ut i sin helhet.
Uppdaterad kod:
public string Grr(DateTime CompareDate)
{
DateTime a = DateTime.Now;
string c = string.Empty;
switch(DateTime.Compare(a, CompareDate))
{
case -1 :
c = CompareDate.ToString();
break;
case 0 :
c = "Idag";
break;
case 1 :
if(CompareDate == a.Subtract(TimeSpan.FromDays(1)))
{
c = "Igår";
break;
}
goto case -1;
}
return c;
}
---
Response.Write(Grr(DateTime.Now.Subtract(TimeSpan.FromDays(1))));
Just DateDiff() har jag faktiskt aldrig tänkt på eftersom jag inte behövt använda den själv än. Men helt klart så tycker jag det är en funktion som skall finnas med. Det finns faktiskt rätt många tillämpningar när man vill veta hur många dagar/månader/år det är mellan 2 datum.
Tycker det verkar konstigt om inte MS har någon smart lösning på problemet. Det är nog bara vi som inte vet hur
- M
270 ms totalt · 4 externa anrop · v20260731065814-full.81e7e81c