के साथ "समय से" उत्पन्न करने का एक शानदार तरीका है मेरे पास यह कोड अतीत में समय लेने और पढ़ने के लिए एक पठनीय स्ट्रिंग उत्पन्न करने के लिए है जो यह कितना समय पहले था। सोचा Timespan.Hoursडेटटाइम ऑब्जेक्ट्स
मैं होता आप घंटे देना होगा, भले ही अतीत में अपने कई Daye लेकिन ऐसा लगता है कि यह टूट जाती है अपनी अलग घटकों (दिन, महीने, आदि) में। मैं कुल घंटे पहले कैसे प्राप्त होगा (भले ही उसके 1 दिन से अधिक?
वहाँ किसी भी क्लीनर तरीके के रूप में यह बहुत spagetti-ish लगता है नीचे दिए गए कोड के इस प्रकार लिखने के लिए यहाँ है।
है कोड
DateTime when = GetDateTimeinPast();
TimeSpan ts = DateTime.Now.Subtract(when);
switch (ts.Days)
{
case 0:
if (ts.Hours < 1)
b.Append(ts.Minutes + " minutes ago");
else
b.Append(ts.Hours + " hours ago");
break;
case 1:
b.Append(" yesterday");
break;
case 2:
case 3:
case 4:
b.Append("on " + when.DayOfWeek.ToString());
break;
default:
b.Append(ts.Days + " days ago");
break;
}
एक भाषा – TheLQ
मदद कर सकती है सी # दिखाई देती है। –
@ लॉर्ड.Quackstar - अद्यतन टैग और प्रश्न – leora