Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/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
C# LINQ不能隐式转换_C#_Linq_Entity Framework_Implicit Conversion - Fatal编程技术网

C# LINQ不能隐式转换

C# LINQ不能隐式转换,c#,linq,entity-framework,implicit-conversion,C#,Linq,Entity Framework,Implicit Conversion,似乎在尝试为我的linq变量设置类时遇到问题: 下面是用于处理数据库数据的类: public class Result { public bool LongerThan10Seconds { get; set; } public int Id { get; set; } public DateTime CompletionTime { get; set; } public double longitude { get; set; } public doub

似乎在尝试为我的linq变量设置类时遇到问题:

下面是用于处理数据库数据的类:

public class Result
{
    public bool LongerThan10Seconds { get; set; }
    public int Id { get; set; }
    public DateTime CompletionTime { get; set; }
    public double longitude { get; set; }
    public double latitude { get; set; }
}
foreach (var query in data.AssetStatusHistories
                          .Where(x => x.TimeStamp <= ft)
                          .Where(x => x.AssetID == guid))
{
    if (lastResult != null)
    {
        if ((query.TimeStamp - lastResult.CompletionTime).TotalSeconds > 10)
        {
            dataResults.Add(new Result() { Id = query.ID,
                                           longitude = query.Longitude, 
                                           latitude = query.Latitude });
        }
        lastResult = query; // <-- Error Is Here
    }
}
然后,我使用此LINQ语句从特定数据库获取数据:

public class Result
{
    public bool LongerThan10Seconds { get; set; }
    public int Id { get; set; }
    public DateTime CompletionTime { get; set; }
    public double longitude { get; set; }
    public double latitude { get; set; }
}
foreach (var query in data.AssetStatusHistories
                          .Where(x => x.TimeStamp <= ft)
                          .Where(x => x.AssetID == guid))
{
    if (lastResult != null)
    {
        if ((query.TimeStamp - lastResult.CompletionTime).TotalSeconds > 10)
        {
            dataResults.Add(new Result() { Id = query.ID,
                                           longitude = query.Longitude, 
                                           latitude = query.Latitude });
        }
        lastResult = query; // <-- Error Is Here
    }
}
foreach(data.AssetStatusHistories中的var查询
.其中(x=>x.TimeStamp x.AssetID==guid))
{
if(lastResult!=null)
{
if((query.TimeStamp-lastResult.CompletionTime).TotalSeconds>10)
{
添加(新结果(){Id=query.Id,
经度=查询经度,
纬度=query.latitude});
}

lastResult=query;//它准确地告诉您它的含义:您无法将
Project.Data
转换为
Project.Result

data.AssetStatusHistories.Where(x=>x.TimeStamp x.AssetID==guid)
不返回
Project.Result
对象的集合,而是返回
Project.data
类型的对象

编辑

如果您的上一个结果的类型为
Result
,我假设您可以键入:

lastResult = new Result(){Id = query.ID,
                          longitude = query.Longitude,
                          latitude = query.Latitude });

但在这种情况下它不会工作。这不是linq相关的问题。您的
lastResult
对象被分配到其他地方。如果您想在最后分配一个新的
lastResult
对象,您想从哪里获得它的
CompletionTime
属性值?在我粘贴的代码中,它没有分配到任何地方。

它告诉您u确切的意思是:您不能将
Project.Data
转换为
Project.Result

**lastResult = query;** <--Error Is Here
data.AssetStatusHistories.Where(x=>x.TimeStamp x.AssetID==guid)
不返回
Project.Result
对象的集合,而是返回
Project.data
类型的对象

编辑

如果您的上一个结果的类型为
Result
,我假设您可以键入:

lastResult = new Result(){Id = query.ID,
                          longitude = query.Longitude,
                          latitude = query.Latitude });

但在这种情况下它不起作用。这不是与linq相关的问题。您的
lastResult
对象被分配到了其他地方。如果您想在最后分配一个新的
lastResult
对象,您想从何处获取它的
CompletionTime
属性值?我粘贴的代码中没有将其分配到任何地方。

**lastResult=query;***
**lastResult=query;**错误听起来就是这样的。似乎
lastResult
是一个
项目。数据
类型,而你的
查询
是一个
项目。结果
。你可能想设置
lastResult=dataResults
?你解决了吗?你的问题实际上是一个重复的问题您之前的问题的副本:这是解决方案的一部分,但我不确定我是否需要lastResult=query;错误听起来就是这样。似乎
lastResult
是一个
项目。数据
类型,而您的
查询
是一个
项目。Result
。您是否打算设置
lastResult=dataResults
?您是否解决了它?您的问题实际上与您先前的问题重复:这是解决方案的一部分,但我很不确定我是否需要lastResult=query;
**lastResult = query;** <--Error Is Here