C# 如何将datetime转换为facebook格式?

C# 如何将datetime转换为facebook格式?,c#,windows-phone-8,C#,Windows Phone 8,我想知道是否有一种方法可以将时间从格式{3/16/2014 7:07:25 AM}转换为facebook格式,比如一小时前等。我正在开发windows phone 8应用程序,在为库编写代码的旁边,自己编写这样的函数并不难。这是我过去用过的: public static string ConvertToFacebookLikeTime(DateTime value) { const int SECOND = 1; const int

我想知道是否有一种方法可以将时间从格式{3/16/2014 7:07:25 AM}转换为facebook格式,比如一小时前等。我正在开发windows phone 8应用程序,在为库编写代码的旁边,自己编写这样的函数并不难。这是我过去用过的:

public static string ConvertToFacebookLikeTime(DateTime value)
        {
            const int SECOND = 1;
            const int MINUTE = 60 * SECOND;
            const int HOUR = 60 * MINUTE;
            const int DAY = 24 * HOUR;
            const int MONTH = 30 * DAY;

            TimeSpan ts = DateTime.Now - value;
            double delta = ts.TotalSeconds;

            if (delta < 0)
            {
                return "Right Now";
            }
            if (delta < 1 * MINUTE)
            {
                //return ts.Seconds == 1 ? "one second ago" : ts.Seconds + " seconds ago";
                return "A Few Seconds Ago";
            }
            if (delta < 2 * MINUTE)
            {
                return "A Minute Ago";
            }
            if (delta < 45 * MINUTE)
            {
                return ts.Minutes + "Minutes Ago";
            }
            if (delta < 90 * MINUTE)
            {
                return "An Hour Ago";
            }
            if (delta < 24 * HOUR)
            {
                return ts.Hours + " Hours Ago";
            }
            if (delta < 48 * HOUR)
            {
                return "Yesterday";
            }
            if (delta < 30 * DAY)
            {
                return ts.Days + " Days Ago";
            }
            if (delta < 12 * MONTH)
            {
                int months = Convert.ToInt32(Math.Floor((double)ts.Days / 30));
                return months <= 1 ? "A Month Ago" : months + "Months Ago";
            }
            else
            {
                int years = Convert.ToInt32(Math.Floor((double)ts.Days / 365));
                return years <= 1 ? "A Year Ago" : years + " Years Ago";
            }
        }
公共静态字符串ConvertToFacebookLikeTime(日期时间值)
{
常数int秒=1;
常数int分钟=60*秒;
常数整小时=60*分钟;
常数整数天=24*小时;
const int MONTH=30*天;
TimeSpan ts=DateTime.Now-值;
双增量=ts.TotalSeconds;
if(δ<0)
{
返回“立即”;
}
如果(增量<1*分钟)
{
//返回ts.Seconds==1?“一秒前”:ts.Seconds+“秒前”;
返回“几秒钟前”;
}
如果(增量<2*分钟)
{
返回“一分钟前”;
}
如果(增量<45*分钟)
{
返回ts.Minutes+“分钟前”;
}
如果(增量<90*分钟)
{
返回“一小时前”;
}
如果(增量<24*小时)
{
返回ts.Hours+“Hours Ago”;
}
如果(增量<48*小时)
{
返回“昨天”;
}
如果(增量<30*天)
{
返回ts.天+天之前;
}
如果(δ<12*个月)
{
整数月份=换算为32(数学下限((双)ts.Days/30));

返回月份问题要求我们推荐或查找工具、库或最喜欢的非现场资源对于Stack OverflowLet来说是离题的。请让我回答这个问题。是的,有办法。已回答。