-
Hallo,
irgendwie kann ich in einer konsolenapplikation keine arrays machen.
hier mal mein code:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.Net.NetworkInformation; using System.Net.Mail; using System.Data; using System.Data.SqlClient; using System.Configuration; namespace PingTool_con { public class Program { string adr[,]; static void Main(string[] args) { adr = new string [5,5]; } }
ich kann irgendwie gar keine "globalen" variablen benutzen. kann mir jemand sagen warum? ich habe das gleiche mal in einer windows Form ausprobiert, da funktioniert es.
-
dann kommt immer folgende Fehlermeldung :
Code :1 2 3 4
Fehler 1 Fehlerhafte Arraydeklaration: Beim Deklarieren eines verwalteten Arrays steht der Rangspezifizierer vor dem Variablenbezeichner. Zum Deklarieren eines Pufferfelds fester Größe verwenden Sie vor dem Feldtyp das fixed-Schlüsselwort. C:\Dokumente und Einstellungen\hk\Eigene Dateien\Visual Studio 2010\Projects\PingTool_con\PingTool_con\Program.cs 21 19 PingTool_con Fehler 2 Für das nicht statische Feld, die Methode oder die Eigenschaft "PingTool_con.Program.adr" ist ein Objektverweis erforderlich. C:\Dokumente und Einstellungen\hk\Eigene Dateien\Visual Studio 2010\Projects\PingTool_con\PingTool_con\Program.cs 30 13 PingTool_con
-
Hi
Bei Fehlermeldung sagen doch schon was falsch ist
1.
Bei der Deklaration von Arrays gehören die eckigen Klammern zum Typ nicht zum Bezeichner.
siehe auch http://www.aspheute.com/artikel/20000731.htm
2.
die Methode Main ist statisch. Demnach müssen auch die genützen Member Klassenmember (also statisch) sein und kein Objektmember.Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
also hätte es wie folgt sein müssen?
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.Net.NetworkInformation; using System.Net.Mail; using System.Data; using System.Data.SqlClient; using System.Configuration; namespace PingTool_con { public class Program { static string[,] adr; static void Main(string[] args) { adr = new string [5,5]; } } }
?
-
Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
also der compiler sagt: es funktioniert. alles ok
habe es aber jetzt um eine structur erweitert.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.Net.NetworkInformation; using System.Net.Mail; using System.Data; using System.Data.SqlClient; using System.Configuration; namespace PingTool_con { struct adr { public string name, adresse; } class Program { static string hallo; static adr _adr = new adr(); static void Main(string[] args) { _adr.name = "hallo"; hallo = "123"; } } }
aber ich habe direkt noch eine frage zu dem programm, ich möchte eine verbindung zu einer datenbank herstellen, die daten die in der datenbank sind möchte ich dann in diese structur einbinden und damit weiter arbeiten. ich habe die verbindung zu meiner datenbank schon erfolgreich hergestellt. ich weiß aber nicht wie ich z.b. aus der tabelle "Adressen" aus der X ten spalte den wert name in _adr.name und adresse in _adr.adresse. wenn ich google dann finde ich immer nur sachen wie ich das in eine combobox einfüge oder in ein datagrid view. aber irgendwie geht das nicht in meine structur. ich hoffe mir kann da jemand helfen.
vielen dank schonmal im vorraus
-
Hab kein VS hier und bei uns haben wir eigene Objekte die die meiste Arbeit übernehmen.

Aber schau dir mal DbDataReader an, damit kannst du einzelne Werte auslesen.
-
mhmmm...irgendwie geht das nicht :-P
-
Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
hier mal der code:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
static public void open_database() { string conStr ="Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|"+ "\\Database.mdf;Integrated Security=True;User Instance=True"; SqlConnection conn = new SqlConnection(conStr); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "Select * from Adressen"; SqlDataReader reader = cmd.ExecuteReader(); conn.Open(); Console.WriteLine(reader.GetString(1)); conn.Close(); }
das programm wird ausgeführt nur es stürzt dann an diesem punkt ab:
Code :1
SqlDataReader reader = cmd.ExecuteReader();
-
sooooo ich glaub ich hab es jetzt soweit.
so gebe ich alle schonmal aus. damit folgt aber ein weiteres problem. ich kann das jetzt nicht in meine structur reinschreiben.Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
static public void open_database() { string conStr ="Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|"+ "\\Database.mdf;Integrated Security=True;User Instance=True"; SqlConnection conn = new SqlConnection(conStr); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "Select * from Adressen"; conn.Open(); SqlDataReader reader = cmd.ExecuteReader(); do { Console.WriteLine("\t{0}\t{1}", reader.GetName(0), reader.GetName(1)); while (reader.Read()) Console.WriteLine("\t{0}\t{1}\t{2}", reader.GetInt32(0), reader.GetString(1),reader.GetString(2)); } while (reader.NextResult()); reader.Close(); conn.Close(); }
wenn ich jetzt schreiben würde:
Code :1
_adr.name =reader.GetString(1);
kommt stürzt es in der laufzeit ab.
-
hat alles funktioniert
danke
Geändert von xlon (09.05.10 um 18:39 Uhr) Grund: Update
-
gibt es auch sowas zum schreiben?
-
Was meinst du? In eine DB schreiben?
Ja! Gleiche Klasse, andere MethodeGrüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
gleiche klasse? andere methode?
also in der SqlDataReader gibt es keine methode zum schreiben :-P bzw. keine die ich gefunden habe.
und ich meine das ich damit ausschließlich lesen darf oder?
Ähnliche Themen
-
C++ 2dim string Array durchsuchen (mit String vergleichen) und Zeile ausgeben
Von LKS im Forum C/C++Antworten: 4Letzter Beitrag: 05.12.10, 23:07 -
Unterschied zwischen "Console.console_in_int()" und "Console.readInt()"
Von SebastianTigo im Forum JavaAntworten: 6Letzter Beitrag: 27.01.10, 16:07 -
per ptr übergebenes 2dim char array wird bei funktionsende "weggeworfen"
Von Biergamasda im Forum C/C++Antworten: 5Letzter Beitrag: 04.03.06, 19:07 -
Pointer auf 2dim. Array
Von Macbeth23 im Forum C/C++Antworten: 10Letzter Beitrag: 09.02.05, 20:46 -
Console I/O
Von Trivalik im Forum .NET ArchivAntworten: 2Letzter Beitrag: 24.01.05, 13:44



1Danke

Zitieren


Login





