Im durch eine Liste ausgeführt wird und den Positionswert aus jedem Datensatz zu extrahierenkonvertieren String Array funktioniert nicht
string allPositionsListed = "";
int lastRecord = volunteerAssignmentList.Count;
int currentRecord = 0;
foreach (Volunteer va in volunteerList)
{
currentRecord++;
if (currentRecord == lastRecord)
{
allPositionsListed += va.Position;
}
else
{
allPositionsListed += va.Position + ",";
}
}
//allPositionsListed returns: "51000785,52012986"
ich geschrieben habe eine Abfrage alle Datensätze aus der positionTable Extrahieren wo Position gefunden wird .. wenn ich verwenden
var allPositions = new string[] { "51000785", "52012986" };
List<PositionTable> positionList = (from p in DbContext.PositionList
where allPositions.Contains(p.Position)
select p).ToList();
diese liefert die richtigen Ergebnisse ... aber da die allPositions Werte verschieden sein können, wie kann ich wandeln es in der erforderlichen String-Array. IVE versucht
var allPositions2 = allPositionsListed.ToArray();
but this returns
[0]5
[1]1
[2]0
[3]0
[4]7
etc...
when I need
[0]51000785
[1]52012986
Während Ihre Antwort richtig ist, müssen Sie die Zeichenfolge gar nicht erst generieren. – DavidG
@DavidG, Ja, aber ich wollte genau darauf hinweisen, wo das Problem liegt. Auf jeden Fall könnte das Problem gelöst werden, indem man nur die "contains" -Methode verwendet, aber er würde nicht erkennen, dass er die falsche Methode für diesen Zweck nennt. – mok
Auch Ihre Antwort würde letztendlich dazu führen, dass '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' werden. – DavidG