我在這裏面臨一些問題。 目標是使用4個值對一個集合進行分組,這些值是Origin.PositionCoordinates.X
,Origin.PositionCoordinates.Y
,Destination.PositionCoordinates.X
,Destination.PositionCoordinates.Y
。Linq的多個值組
我得到錯誤提示:
匿名類型不能有多個同名的屬性。
我不能更改設計(不能更改類屬性)。有沒有解決這個問題的方法?以下是我正在努力的示例代碼。
private bool EdgeCollectionIsAppropriate(Dictionary<int, DijkstraEdge> theEdges)
{
if (theEdges.GroupBy(variable => new {
variable.Value.Origin.PositionCoordinates.X,
variable.Value.Origin.PositionCoordinates.Y,
variable.Value.Destination.PositionCoordinates.X,
variable.Value.Destination.PositionCoordinates.Y }).Any(x=>x.Count()>1))
{
logger.Debug("The edges list contains 2 or more edges with same destnation and origin position");
return false;
}
return true;
}