Ich deklariere einige Zeichenfolgen, die leer sind, damit später keine Fehler auftreten.
Ich habe gelesen, dass dies der richtige Weg war:
string Camnr = Klantnr = Ordernr = Bonnr = Volgnr = Omschrijving = Startdatum = Bonprioriteit = Matsoort = Dikte = Draaibaarheid = Draaiomschrijving = Orderleverdatum = Regeltaakkode = Gebruiksvoorkeur = Regelcamprog = Regeltijd = Orderrelease = "";
Das geht aber nicht Ich erhalte diesen Fehler : Klantnr does not exist in the current context
.
Was habe ich falsch gemacht?
c#
variable-declaration
variable-initialization
Mathlight
quelle
quelle
Antworten:
Sie können es tun wie:
string Camnr, Klantnr, Ordernr, Bonnr, Volgnr;// and so on. Camnr = Klantnr = Ordernr = Bonnr = Volgnr = string.Empty;
Zuerst müssen Sie die Variablen definieren und dann können Sie sie verwenden.
quelle
Session["a"] = ViewBag.aa = "hello";
Sie können dies folgendermaßen tun:
string Camnr = "", Klantnr = "", ... // or String.Empty
Oder Sie können sie alle zuerst deklarieren und dann in der nächsten Zeile Ihren Weg verwenden.
quelle
string.Empty
ist das gleiche wie mit""
. Siehe stackoverflow.com/questions/263191/…Ein Beispiel für das, was ich verkettete Deklarationen nenne:
string Camnr = "", Klantnr = "", Ordernr = "", Bonnr = "", Volgnr = "", Omschrijving = "", Startdatum = "", Bonprioriteit = "", Matsoort = "", Dikte = "", Draaibaarheid = "", Draaiomschrijving = "", Orderleverdatum = "", Regeltaakkode = "", Gebruiksvoorkeur = "", Regelcamprog = "", Regeltijd = "", Orderrelease = "";
Nur meine 2 Cent, hoffe es hilft jemandem irgendwo.
quelle
Versuche es mit:
string Camnr, Klantnr, Ordernr, Bonnr, Volgnr, Omschrijving; Camnr = Klantnr = Ordernr = Bonnr = Volgnr = Omschrijving = string.Empty;
quelle
Versuchen
string Camnr , Klantnr , Ordernr , Bonnr , Volgnr , Omschrijving , Startdatum , Bonprioriteit , Matsoort , Dikte , Draaibaarheid , Draaiomschrijving , Orderleverdatum , Regeltaakkode , Gebruiksvoorkeur , Regelcamprog , Regeltijd , Orderrelease ;
und dann
Camnr = Klantnr = Ordernr = Bonnr = Volgnr = Omschrijving = Startdatum = Bonprioriteit = Matsoort = Dikte = Draaibaarheid = Draaiomschrijving = Orderleverdatum = Regeltaakkode = Gebruiksvoorkeur = Regelcamprog = Regeltijd = Orderrelease = "";
quelle
string Camnr , Klantnr , Ordernr , Bonnr , Volgnr , Omschrijving , Startdatum , Bonprioriteit , Matsoort , Dikte , Draaibaarheid , Draaiomschrijving , Orderleverdatum , Regeltaakkode , Gebruiksvoorkeur , Regelcamprog , Regeltijd , Orderrelease; Camnr = Klantnr = Ordernr = Bonnr = Volgnr = Omschrijving = Startdatum = Bonprioriteit = Matsoort = Dikte = Draaibaarheid = Draaiomschrijving = Orderleverdatum = Regeltaakkode = Gebruiksvoorkeur = Regelcamprog = Regeltijd = Orderrelease = string.Empty;
quelle
Nur zur Erinnerung: Implizite Eingabe
var
in Mehrfachdeklarationen ist nicht zulässig. Möglicherweise liegen die folgenden Kompilierungsfehler vor.var Foo = 0, Bar = 0;
Ähnlich,
var Foo, Bar;
quelle
string a = "", b = a , c = a, d = a, e = a, f =a;
quelle
Alle Informationen sind in den vorhandenen Antworten enthalten, aber ich persönlich wünschte mir eine kurze Zusammenfassung. Hier ist ein Versuch, dies zu tun. Die Befehle verwenden der
int
Kürze halber Variablen, gelten jedoch analog für jeden Typ, einschließlichstring
.So deklarieren Sie mehrere Variablen und :
int i = 0, j = 1; // declare and initialize each; `var` is NOT supported as of C# 8.0
int i, j; // *declare* first (`var` is NOT supported) i = j = 42; // then *initialize* // Single-statement alternative that is perhaps visually less obvious: // Initialize the first variable with the desired value, then use // the first variable to initialize the remaining ones. int i = 42, j = i, k = i;
Was nicht funktioniert:
Sie können
var
die obigen Anweisungen nicht verwenden , da sievar
nur mit (a) einer Deklaration funktionieren, die einen Initialisierungswert hat (aus dem der Typ abgeleitet werden kann), und (b) ab C # 8.0, wenn diese Deklaration die einzige in ist die Anweisung (andernfalls erhalten Sie einen Kompilierungsfehlererror CS0819: Implicitly-typed variables cannot have multiple declarators
).Platzieren einen Initialisierungswert erst , nachdem die letzte Variable in einer Multiple-Deklarationen Anweisung die initialisiert nur letzten Variable :
int i, j = 1;
// initializes *only* j
quelle
Ziemlich alte Frage, aber falls jemand zurückgeht.
Dies ist nicht so kompakt wie die anderen Antworten oben, aber ziemlich lesbar und einfacher zu tippen, wenn Sie die mehrzeilige Visual Studio-Auswahlverknüpfung [Alt + Umschalt + ↑] (oder andere Richtungen) verwenden.
string Camnr = string.Empty; string Klantnr = string.Empty;
Geben Sie alle Variablennamen in neue Zeilen ein. Wählen Sie vor ihnen einen Typ "String" aus. Mehrfachauswahl dahinter und geben Sie "= string.Empty;" ein.
quelle