GVKun编程网logo

Javascript 中是否有 C# Unspecified DateTime.Kind 的等价物?(js中的!!)

22

关于Javascript中是否有C#UnspecifiedDateTime.Kind的等价物?和js中的!!的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于asp.netmvc3访问jav

关于Javascript 中是否有 C# Unspecified DateTime.Kind 的等价物?js中的!!的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于asp.net mvc 3访问javascript中的DateTime模型属性、asp.net – DbFunctions.TruncateTime在ASP .NET CORE中的LINQ等价物、asp.net-mvc-2 – JavaScriptSerializer没有正确反序列化DateTime / TimeSpan、c# – Java中DateTime.FromOADate()的等价物(Java中的日期时间为double)等相关知识的信息别忘了在本站进行查找喔。

本文目录一览:

Javascript 中是否有 C# Unspecified DateTime.Kind 的等价物?(js中的!!)

Javascript 中是否有 C# Unspecified DateTime.Kind 的等价物?(js中的!!)

如何解决Javascript 中是否有 C# Unspecified DateTime.Kind 的等价物??

在 C# 中,我们有以下 DateTime.Kind:

Local
Utc
Unspecified

在 Javascript 中,我只见过 Local 和 UTC。有未指定的吗?如果没有,是否可以重新创建它?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

asp.net mvc 3访问javascript中的DateTime模型属性

asp.net mvc 3访问javascript中的DateTime模型属性

在Asp.Net MVC中,我有一个包含DateTime类型属性的模型.

如何在JavaScript中访问它?

使用@(Model.PrimitiveTypeProperty)工作得很好,但是当涉及到DateTime的属性时.

问题更复杂,但我需要至少对此值进行修改.
可能吗?

解决方法:

如果您希望将DateTime属性基本上转换为JS Date,您可以尝试以下方法:

var jsDate = Date.parse('@Model.EndDate.ToUniversalTime().ToString("r")');

asp.net – DbFunctions.TruncateTime在ASP .NET CORE中的LINQ等价物

asp.net – DbFunctions.TruncateTime在ASP .NET CORE中的LINQ等价物

我的.net应用程序中有以下功能LINQ

public ActionResult Index()
    {
        Dictionary<DateTime?,List<Event>> result;
        result = (from events in db.Events.Include("Activity")
                      where events.IsActive
                      group events by DbFunctions.TruncateTime(events.DateTimeFrom) into dateGroup
                      select new { EventDate = dateGroup.Key,Events = dateGroup.ToList() }).ToDictionary(x => x.EventDate,x => x.Events);

        return View(result);
    }

当我在ASP .NET CORE中使用它时,我不能使用DbFunctions.我如何重写它以使其在Microsoft.EntityFrameworkCore中工作?我正在使用sqlite,如果这有所作为.

解决方法

在EF6中使用DbFunctions.TruncateTime而不是DateTime.Date属性,因为由于某种原因,后者不受支持.

在EF Core中,不需要前者,因为现在可以正确识别和翻译DateTime.Date.

group events by events.DateTimeFrom.Date into dateGroup

遗憾的是,还没有支持的文档,所以作为一般的经验法则,总是尝试相应的CLR方法/属性(如果有的话)并检查它是否转换为sql以及如何.

asp.net-mvc-2 – JavaScriptSerializer没有正确反序列化DateTime / TimeSpan

asp.net-mvc-2 – JavaScriptSerializer没有正确反序列化DateTime / TimeSpan

有一个问题,其中DateTime / TimeSpan似乎没有使用JavaScriptSerializer正确反序列化.
当我在反序列化后得到Object时,TimeSpan为空,如果我使用DateTime,那么时间就完全没了.
找到了这篇文章,但它并没有真正帮助我太多.
http://www.west-wind.com/weblog/ShowPost.aspx?id=471402

有人有主意吗?我应该尝试json.net库吗?

public class JsonFilter : ActionFilterattribute
{
    public string Param { get; set; }
    public Type JsonDataType { get; set; }
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        if (filterContext.HttpContext.Request.ContentType.Contains("application/json"))
        {
            string inputContent;
            using (var sr = new StreamReader(filterContext.HttpContext.Request.InputStream))
            {
                inputContent = sr.ReadToEnd();
            }

            JavaScriptSerializer serializer = new JavaScriptSerializer();
            var result = serializer.Deserialize(inputContent,JsonDataType);
            filterContext.ActionParameters[Param] = result;
        }
    }
}

public class RosterItem
{
    public RosterItem()
    {
        comments = new List<Form.Comment>();
    }
    public Boolean dirty { get; set; }
    public int id { get; set; }
    public int staffId { get; set; }
    public String description { get; set; }
    public int activityId { get; set; }
    public DateTime date { get; set; }
    public TimeSpan startTime { get; set; }
    public TimeSpan endTime { get; set; }
    public List<Form.Comment> comments { get; set; }
}

    [JsonFilter(Param = "rosterItem",JsonDataType = typeof(RosterItem))]
    public int SaveRosterEntry(RosterItem rosterItem)
    {
        RosterEntry rosterEntry = rosterEntryRepository.GetRosterEntry(rosterItem.id);
        if (rosterEntry == null)
        {
            rosterEntry = new RosterEntry();
            rosterEntryRepository.Add(rosterEntry);
        }
        rosterEntry.ActivityID = rosterItem.activityId;
        rosterEntry.StartTime = rosterItem.startTime;
        rosterEntry.EndTime = rosterItem.endTime;
        rosterEntry.RosterDate = rosterItem.date;
        rosterEntry.RosterEmployeeID = rosterItem.staffId;            
        rosterEntryRepository.Save();
        return rosterEntry.RosterEntryID;
    }
@H_301_9@

解决方法

我在GitHub上的帖子中找到了答案:

https://github.com/NancyFx/Nancy/issues/336

基本上答案是创建一个新的TimeSpanjsonConverter,它继承自JavaScriptConverter,然后将其传递给序列化程序类的实例:

var serializer = new System.Web.Script.Serialization.JavaScriptSerializer()
serializer.RegisterConverters(new[] { new TimeSpanjsonConverter() });

全班供参考(由GrumpyDev编写):

public class TimeSpanjsonConverter : JavaScriptConverter
{
    public override IEnumerable<Type> SupportedTypes
    {
        get
        {
            return new[] { typeof(TimeSpan) };
        }
    }

    public override object Deserialize(IDictionary<string,object> dictionary,Type type,JavaScriptSerializer serializer)
    {
        return new TimeSpan(
            this.GetValue(dictionary,"days"),this.GetValue(dictionary,"hours"),"minutes"),"seconds"),"milliseconds"));
    }

    public override IDictionary<string,object> Serialize(object obj,JavaScriptSerializer serializer)
    {
        var timeSpan = (TimeSpan)obj;

        var result = new Dictionary<string,object>
            {
                { "days",timeSpan.Days },{ "hours",timeSpan.Hours },{ "minutes",timeSpan.Minutes },{ "seconds",timeSpan.Seconds },{ "milliseconds",timeSpan.Milliseconds }
            };

        return result;
    }

    private int GetValue(IDictionary<string,string key)
    {
        const int DefaultValue = 0;

        object value;
        if (!dictionary.TryGetValue(key,out value))
        {
            return DefaultValue;
        }

        if (value is int)
        {
            return (int)value;
        }

        var valueString = value as string;
        if (valueString == null)
        {
            return DefaultValue;
        }

        int returnValue;
        return !int.TryParse(valueString,out returnValue) ? DefaultValue : returnValue;
    }
}
@H_301_9@ @H_301_9@

总结

以上是小编为你收集整理的asp.net-mvc-2 – JavaScriptSerializer没有正确反序列化DateTime / TimeSpan全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

c# – Java中DateTime.FromOADate()的等价物(Java中的日期时间为double)

c# – Java中DateTime.FromOADate()的等价物(Java中的日期时间为double)

C#有一个DateTime.FromOADate()方法.

Java中的DateTime.FromOADate()相当于什么?

这是我的C#代码:

var b = new byte[8];
b[0] = 0x20;
b[1] = 0x64;
b[2] = 0xa8;
b[3] = 0xac;
b[4] = 0xb6;
b[5] = 0x65;
b[6] = 0xe4;
b[7] = 0x40;
var dbl = BitConverter.Todouble(b,0);
var dt = DateTime.FromOADate(dbl);

这是输出:

2014-05-14T17:00:21

如何将此字节数组转换为java?

解决方法

您是否意识到您的二进制数据是 OLE Automation date值的二进制represantation?

因此,您应该从数组中获取double值,而不是变长.

var b = new byte[8];
b[0] = 0x20;
b[1] = 0x64;
b[2] = 0xa8;
b[3] = 0xac;
b[4] = 0xb6;
b[5] = 0x65;
b[6] = 0xe4;
b[7] = 0x40;
var dbl = BitConverter.Todouble(b,0);
var dt = DateTime.FromOADate(dbl);
Console.WriteLine("{0:s}",dt);

结果是:

2014-05-14T17:00:21

我认为有效的问题应该是:Java中的DateTime.FromOADate()相当于什么?

答案是:

public static Date fromDoubletoDateTime(double OADate) 
{
    long num = (long) ((OADate * 86400000.0) + ((OADate >= 0.0) ? 0.5 : -0.5));
    if (num < 0L) {
        num -= (num % 0x5265c00L) * 2L;
    }
    num += 0x3680b5e1fc00L;
    num -=  62135596800000L;

    return new Date(num);
}

我们今天的关于Javascript 中是否有 C# Unspecified DateTime.Kind 的等价物?js中的!!的分享已经告一段落,感谢您的关注,如果您想了解更多关于asp.net mvc 3访问javascript中的DateTime模型属性、asp.net – DbFunctions.TruncateTime在ASP .NET CORE中的LINQ等价物、asp.net-mvc-2 – JavaScriptSerializer没有正确反序列化DateTime / TimeSpan、c# – Java中DateTime.FromOADate()的等价物(Java中的日期时间为double)的相关信息,请在本站查询。

本文标签: