2016-09-08 5 views
0

Wie im Titel erwähnt, bin ich im Grunde ein Programm (Server/Client) wo der Server fügt einige Daten in einer Tabellenzeile, und der Client liest die Daten.C# unendliche Zeilen lesen

while (true) 
{ 
string Command = ReadData(); 
//Read row 
    if (Command != string.Empty) 
    { 
     switch(Command) 
     { 
     case "Connection": 
     Console.writeLine("Connected !"); 
     break; 
     } 
    } 
    else 
    { 
    console.writeLine("No data were found ! "); 
    } 
} 

Readata(); Die Funktion gibt nur eine Zeichenfolge, wenn in einer Reihe gefunden.

Die Standarddaten in dieser Zeile sind Null - in dieser Zeile sind keine Daten gespeichert, bis der Server einige Informationen wie einen Befehl darauf einfügt.

Der Client liest diese Zeile immer und für jedes Mal, wenn er etwas anderes als null findet, wird Code ausgeführt.

Wird das Programm nicht während der Ausführung unterbrochen?

Ich hoffe meine Frage ist klar, und einen schönen Tag!

+1

Nein, ich glaube, Ihre Frage ist unklar. Ich schlage vor, dass Sie etwas Code hinzufügen, um Ihren Kontext besser zu erklären. – Steve

+0

Hallo! Es tut mir leid für die Störung, ich werde es bearbeiten –

Antwort

0

Das Programm wird nicht beschädigt, wenn der Client den Fall behandelt, in dem die Zeile nicht existiert.

Zum Beispiel (Pseudocode)

loop { 
    checkForRow(); 
    if (row.exists) { 
     readRowData(); 
     clearRowData(); 
    } 
} 
+0

So muss ich mit den vielen Fällen des Lesens einer Zeile umgehen! , Vielen Dank, mein Herr ! –

+0

Ja. Wenn Sie ADO verwenden, können Sie etwas wie einen DataReader verwenden und die 'HasRows' -Eigenschaft überprüfen, um zu sehen, ob Sie etwas aus der Tabelle lesen. Wenn 'HasRows == true' ist, können Sie auf die Daten zugreifen. – squillman

+0

Ja! Es wird zu viele Abfragen oder gespeicherte Prozeduren geben, da zu viele Server vorhanden sind und zu viele Clients das Programm oder die Datenbank nicht selbst überlasten? –