Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 实体框架“System.DateTime”类型转换为“System.Byte[]”_Asp.net Mvc_Entity Framework - Fatal编程技术网

Asp.net mvc 实体框架“System.DateTime”类型转换为“System.Byte[]”

Asp.net mvc 实体框架“System.DateTime”类型转换为“System.Byte[]”,asp.net-mvc,entity-framework,Asp.net Mvc,Entity Framework,我正在使用实体框架查询SQL Server数据库。具体而言,我正在尝试提取日期时间戳: var sortedId = db.SensorDatas.OrderByDescending(model => model.Id).Select(model => model.stamp).Take(id).ToList(); 这将导致例外情况: The specified cast from a materialized 'System.DateTime' type to the 'Syst

我正在使用实体框架查询SQL Server数据库。具体而言,我正在尝试提取日期时间戳:

var sortedId = db.SensorDatas.OrderByDescending(model => model.Id).Select(model => model.stamp).Take(id).ToList();
这将导致例外情况:

The specified cast from a materialized 'System.DateTime' type to the 'System.Byte[]' type is not valid.
如何创建日期时间戳字符串列表

编辑:

这就是表格的构造方式:

CREATE TABLE [dbo].[SensorData] (
      [Id]    INT        NULL,
      [stamp] DATETIME   DEFAULT (getdate()) NOT NULL,
      [data]  FLOAT (53) NULL
);
以下是在代码中声明表/变量的方式:

public partial class SensorData
{
    public Nullable<int> Id { get; set; }
    public byte[] stamp { get; set; }
    public Nullable<double> data { get; set; }
}

错误表示您正试图将DateTime值放入字节数组属性中。不涉及任何条件。我怀疑您的stamp属性是byte[]而不是DateTime。至于Take,它相当于TOP。我怀疑您是否希望检索与实体的IDPlease相同数量的记录,并验证戳记字段的类型。[TIMESTAMP]字段不包含时间值,它们包含用于版本控制和乐观并发的二进制值。2008年,该类型的名称改为ROWVERSION,但许多人仍然认为,通过将其读入一个字节,可以从中提取一些有意义的时间值array@PanagiotisKanavos-请参见编辑,这表明该戳记为日期时间格式。Take使用了一个名为id的变量,它与id不同,我知道这不是一个好的做法。我知道目前没有涉及任何字符串,但这正是我想要实现的,所有要读取并放入列表的日期时间字符串我认为您需要重构代码var sortedId=db.SensorDatas.orderbydowningmodel=>model.stamp.selectmodel=>model.stamp.ToList@user3238504邮票属性呢?这里没有涉及格式或字符串。消息说您试图将datetime存储到byte[]属性。邮票是什么类型的?