Ich habe eine Klasse:Kopieren Sie eine Liste <SomeClass> in anderen aber eine Funktion auf eine Eigenschaft in LINQ Anwendung
public class IdXYZ
{
int id;
double x;
double y;
double z;
public int ID
{
get { return id; }
set { id = value; }
}
public double X
{
get { return x; }
set { x = value; }
}
public double Y
{
get { return y; }
set { y = value; }
}
public double Z
{
get { return z; }
set { z = value; }
}
public IdXYZ(int argid, double argx, double argy, double argz)
{
id = argid;
x = argx;
y = argy;
z = argz;
}
public IdXYZ(double argx, double argy, double argz)
{
x = argx;
y = argy;
z = argz;
}
}
Gesetzt Ich füllte bereits eine Liste wie:
List<IdXYZ> Points = new List<IdXYZ>();
Points.Add(new IdXYZ(520, 150, 520));
Points.Add(new IdXYZ(567, 120, 522));
Points.Add(new IdXYZ(614, 520, 541));
Points.Add(new IdXYZ(661, 520, 540));
Points.Add(new IdXYZ(520, 110, 544));
Points.Add(new IdXYZ(543, 110, 545));
Points.Add(new IdXYZ(567, 610, 549));
Points.Add(new IdXYZ(614, 610, 510));
Points.Add(new IdXYZ(661, 160, 820));
Points.Add(new IdXYZ(520, 166, 530));
Points.Add(new IdXYZ(543, 166, 330));
Points.Add(new IdXYZ(567, 660, 520));
Points.Add(new IdXYZ(614, 660, 520));
Points.Add(new IdXYZ(661, 660, 620));
Wie kann ich kopieren, dass Liste in anderen BUT Anwendung folgende Bedingung
if (item.Z % 2 == 0 || item.Z % 100 == 0)
item.Z = item.Z - 505;
else
item.Z = item.Z - 405;
ich tat
var PointsB = (from item in Points select item.Z % 2 == 0 || item.Z % 100 == 0 ? item.Z - 505 : item.Z - 405);
Aber das würde nur zählbare von Z erhalten
Wie die neue Liste bekommen mit Z obigen Bedingung verwendet?
item.Z% 2 == 0 || item.Z% 100 == 0 Wann wird die zweite Bedingung wahr, aber nicht die erste? Ich glaube nicht, dass du die zweite Bedingung brauchst ... –