Obligatorisch Ich bin neu in C# und arbeite an einem großen Projekt für die Arbeit und habe in eine Mauer gerannt google kann nicht scheinen, mir zu helfen, zu lösen.Kann nicht implizit Zeichenfolge [] in Zeichenfolge im Fall konvertieren
Ich verstehe, dass der Fall konstant sein muss und ich benutze eine Variable, um einen Fall zu erklären, aber ich kann nicht den richtigen Weg finden, um das Problem zu beheben.
Ich verwende den Code, um zu bestimmen, ob eine Bestellnachricht an einen Markt gesendet werden soll oder nicht.
Die definierte Variable
private string[] m_oKeys = new string[1];
Der Schalter mit der Ausgabe
public void m_ts_OrderAdded(object sender, OrderAddedEventArgs e)
{
string key = e.Order.SiteOrderKey;
switch (key)
{
case m_oKeys[1]:
m_oObject = new e.Order();
m_oKeys = new e.Order.SiteOrderKey();
m_InFlight = new (false);
break;
case m_oKeys[]:
m_oObject[] = e.Order;
m_oKeys(1) = e.Order.SiteOrderKey;
m_InFlight(1) = false;
break;
default:
break;
//handle order not found...
}
}
Was ist 'case m_oKeys []' beabsichtigt zu stimmen, gibt es keinen Index angegeben ...? –
Wie Sie bereits erwähnt haben, müssen die in den case-Anweisungen verwendeten Literale Konstanten sein. Die einzige Syntax, die Sie verwenden dürfen, sind konstante Literale wie "case" key1 ":". Sie können hier keine Variable verwenden. Schreiben Sie stattdessen die switch-Anweisung als eine Reihe von if-Anweisungen aus. Was soll das auch? 'case m_oKeys []:' <- no index –