Autor Beitrag
Kryox
Hält's aus hier
Beiträge: 12



BeitragVerfasst: Di 12.03.13 15:25 
Hallo!

folgende Klasse:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
class Order
{
    public string ID { get; set; }
    public string Status { get; set; }
}


Datensätze werden so eingetragen:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
foreach (ListViewItem item in listView1.Items)
    {
     var orders = new Order[]{
         new Order{ID = item.Text.ToString(), Status = item.SubItems[4].Text.ToString()}
  };
}



Fehler:
ausblenden Quelltext
1:
Der Name "orders" ist im aktuellen Kontext nicht vorhanden. (CS0103)					


Wie kann ich nun meine nicht deklarierte variable "orders" außerhalb der foreach nutzen?
Ich kann ihr ja keinen typ zuweisen und diesen zuvor zu publizieren (public).

Beispielsweise eine einfache message ausgabe von *.ID oder *.Status..

Wie geht das? Danke!
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4701
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Di 12.03.13 15:41 
Zitat:
Wie kann ich nun meine nicht deklarierte variable "orders" außerhalb der foreach nutzen?


Indem du die nicht in dem foreach deklarierst sondern außerhalb.
Was soll das eigentlich? Ist dir bewußt das du im Moment bei jedem einzelnen Schleifendurchlauf ein neues Order Array mit einem Element erzeugst und das vorhergehende wieder verwirfst?
Kryox Threadstarter
Hält's aus hier
Beiträge: 12



BeitragVerfasst: Mi 13.03.13 08:05 
user profile iconRalf Jansen hat folgendes geschrieben Zum zitierten Posting springen:
Zitat:
Wie kann ich nun meine nicht deklarierte variable "orders" außerhalb der foreach nutzen?


Indem du die nicht in dem foreach deklarierst sondern außerhalb.
Was soll das eigentlich? Ist dir bewußt das du im Moment bei jedem einzelnen Schleifendurchlauf ein neues Order Array mit einem Element erzeugst und das vorhergehende wieder verwirfst?


Kannst du mir bitte anhand eines Beispiels beibringen wie?
Palladin007
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1282
Erhaltene Danke: 182

Windows 11 x64 Pro
C# (Visual Studio Preview)
BeitragVerfasst: Mi 13.03.13 08:55 
Wahrscheinlich solltest du dir mal ein gutes Buch durchlesen.

Ich glaube aber auch, dass du einfach keine Lust hast, dich selber damit zu beschäftigen und das Array einfach außerhalb der Schleife zu deklarieren, denn ganz ehrlich: Einfacher geht nicht

Aber ein Beispiel kriegst du trotzdem:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var orders = new Order[] { */ ... */ };

foreach (var item in liste)
{
    // Tu was mit orders
}

// Tu auch hier was mit orders
Kryox Threadstarter
Hält's aus hier
Beiträge: 12



BeitragVerfasst: Mi 13.03.13 10:11 
user profile iconPalladin007 hat folgendes geschrieben Zum zitierten Posting springen:
Wahrscheinlich solltest du dir mal ein gutes Buch durchlesen.

Ich glaube aber auch, dass du einfach keine Lust hast, dich selber damit zu beschäftigen und das Array einfach außerhalb der Schleife zu deklarieren, denn ganz ehrlich: Einfacher geht nicht

Aber ein Beispiel kriegst du trotzdem:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var orders = new Order[] { */ ... */ };

foreach (var item in liste)
{
    // Tu was mit orders
}

// Tu auch hier was mit orders


Du hast leider mein Vorhaben nicht verstanden. Ich will die nicht deklarierte orders inerhalb der foreach füllen.

Habs jetzt mit nem array und linq gelöst, kann geclosed werden.
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 13.03.13 10:21 
Könntest Du die Lösung evtl. noch posten. Dann versteht man vielleicht auch die Frage im nach hinein :D

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".