Menu i C#
Hej jeg vil gerne lave en menu så jeg kan vælge at se info om min server før jeg starter den og så havde muligheden til at starte den fra menuen af. Er der ikke nogle som vil hjælpe mig med dette.Her er min kode til min server
using System;
using System.IO;
using System.Net;
using System.Net.Sockets;
using System.Collections;
public class Server
{
// Instance variable to hold names and addresses
private Hashtable addressTable;
// main method to start the erver application
public static void Main()
{
Server s = new Server();
s.Start();
}
public Server()
{
Console.WriteLine("Initializing Server data");
// Set up names and addresses
addressTable = new Hashtable(10);
addressTable.Add("Kasper", "d66");
addressTable.Add("Nick", "a1");
addressTable.Add("Martin", "kommer altid for sent");
addressTable.Add("Thomas", "a2");
}
public void Start()
{
Socket serverSocket = null;
Socket socket = null;
NetworkStream stream = null;
StreamWriter writer = null;
StreamReader reader = null;
Console.WriteLine("Starting server");
try
{
// Register service on port 1234
Console.WriteLine("Applying IP");
string strHostName = Dns.GetHostName();
IPHostEntry ipEntry = Dns.GetHostByName(strHostName);
IPAddress[] addr = ipEntry.AddressList;
serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
serverSocket.Bind(new IPEndPoint(addr[0], 1234)); // evt lige kig i addr og se om noget kan bruges først. Har ikke selv testet dette.
Console.WriteLine("IP setup - "+addr[0]);
Console.WriteLine("Server is now ready");
serverSocket.Listen(0);
//Wait for a connection from a client
while (true)
{
//Wait here and listen for a connection
Console.WriteLine("Waiting for client connection ...");
// Accepting a connection provides a socket to handle
// client-server communications
socket = serverSocket.Accept();
Console.WriteLine("Connection Accepted");
stream = new NetworkStream(socket);
reader = new StreamReader(stream);
writer = new StreamWriter(stream);
Console.WriteLine("Reading client data");
String queryString = reader.ReadLine();
Console.WriteLine("Client data is : {0} ", queryString);
// Now obtain information from addressTable
// need to cast the result to a string as Object is returned
// by default
String result = (string)addressTable[queryString];
Console.WriteLine("Result is {0} ", result);
// Return information to client
// Get a communications stream from the socket
Console.WriteLine("Sending data to client");
writer.Write(result);
writer.Write(" test");
writer.Flush();
Console.WriteLine("Data sent, closing connection");
reader.Close();
reader = null;
writer.Close();
writer = null;
socket.Close();
socket = null;
}
}
catch (SocketException e)
{
Console.WriteLine("Error initializing Socket: " + e.ToString());
}
catch (IOException exp)
{
Console.WriteLine("Error in Socket Communication: " + exp.ToString());
}
}
}
