Legen Sie den Wert für alle Zeilen in einer Datentabelle ohne for-Schleife fest

8

Ich versuche, den gleichen Wert für alle Zeilen für eine einzelne Spalte in einer Datentabelle ohne Verwendung von for-Schleife festzulegen. Kann jemand schnellere Methoden vorschlagen, um dasselbe zu erreichen?

    
Soham Dasgupta 21.02.2011, 07:58
quelle

4 Antworten

8

Nicht, es sei denn, Sie zählen foreach . Auf die eine oder andere Weise müssen Sie eine Schleife erstellen.

Wenn Sie die DataTable -Version verwenden, besteht der schnellste Ansatz darin, den DataColumn -Accessor zu verwenden, d. h.

%Vor%

Als Alternative: Da dies vermutlich auf eine Datenbank zutrifft, schreiben Sie den TSQL manuell, um alle Werte entsprechend zu setzen (d. h. mit einer geeigneten where -Klausel im TSQL).

%Vor%     
Marc Gravell 21.02.2011, 08:04
quelle
14

Ja, das ist möglich, auch ohne Schleife! Dies kann mit der Eigenschaft Expression geschehen. Beachten Sie, dass String-Werte in Anführungszeichen gesetzt werden sollten, andernfalls sieht es dies als einen anderen Spaltennamen. 1

Dies setzt die Spalte 'col1' mit dem String-Wert a :

%Vor%

Dies wird in 'col1' den Wert der Spalte 'col2' anzeigen:

%Vor%     
Julian 13.07.2012 16:09
quelle
4

Haben Sie darüber nachgedacht, die Spalte mit einem Standardwert zu entfernen und erneut hinzuzufügen?

%Vor%

(Angenommen, Ihr Spaltenname ist FilterText und Sie möchten ihn auf "Jam and chips" setzen)

    
Jonathan 04.10.2012 10:36
quelle
0

Ich lief auf diese Art von Problem, wo die Select All Checkbox wurde verwendet, um eine Spalte "sel" auf 1 oder 0, die foreach-Schleife ist sehr langsam, ich habe die Idee von @ Jonathan Antwort, die schneller ist, graben, aber mit ein paar kleinen Änderungen, da die With-Klausel nicht in c # funktioniert

%Vor%     
Sohaib Yahya 02.03.2018 11:34
quelle

Tags und Links