All pastes #439552 Raw Edit

Something

public text v1 · immutable
·published 2007-04-14 10:40 UTC
rendered paste body
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

/// <summary>
/// Die Chat Klasse dient zur Kommunikation der Spieler.
/// </summary>
public class Chat
{
    int InSpielid; // Die Spielid die auf das Spiel verweist
    String InUser; // Der User der Text sendet
    String InText; // Der gesendete Text
    DateTime inTime; // Der Zeipunkt andem die Nachricht gesenden worden ist
    public void Chat(int InSpielid) 
    {
        // Diese Klasse erstellt einen virtuellen "Chatroom" dieser dient dazu den Narichtenverkehr zu
        // regeln, da nun auf den Chatroom verwiesen werden kann.

        try
        {
            // Die Connection Null setzen um Falsche Ergebnisse zu vermeiden          
            SqlConnection conn = null;
            SqlDataReader reader = null;
            // eine Verbindung erstellen
            conn = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\ASPNETDB.MDF;Integrated Security=True;User Instance=True;");
            conn.Open();

            // Zuerst wird der Query String eingelesen
            SqlCommand cmd = new SqlCommand("INSERT INTO Chat(id, gamid)VALUES     (, @SpielId);", conn);

            // Dem dann Parameter definiert 
            SqlParameter param = new SqlParameter();
            param.ParameterName = "@SpielId";
            param.Value = InSpielid;

            // und letztendlich hinzugefügt werden.
            cmd.Parameters.Add(param);

            // Dann wird das Query Ausgeführt, der Inser ist vollendet
            reader = cmd.ExecuteReader();

        }
        finally
        {
            // Den datenreader schliesen
            if (reader != null)
            {
                reader.Close();
            }

            // und die Verbindung beenden.
            if (conn != null)
            {
                conn.Close();
            }
        }

        return ergebnisschat; // hier wird das ergebniss zurückgegeben
    }
    public void chatten(DateTime InTime, String Inuser, String InText, int Spielid)
    {
        // Diese Klasse dient dazu den Text, den die User Chatten, in die Datenbank einzufügen

        try
        {
            // Die Connection Null setzen um Falsche Ergebnisse zu vermeiden          
            SqlConnection conn = null;
            SqlDataReader reader = null;
            // eine Verbindung erstellen
            conn = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\ASPNETDB.MDF;Integrated Security=True;User Instance=True;");
            conn.Open();

            // Zuerst wird der Query String eingelesen
            SqlCommand cmd = new SqlCommand("INSERT INTO Chat_Gespraech(id,user, text, time)VALUES     (@Chat_id, @chat_user, @chat_text @chat_time);", conn);

            // Dem dann Parameter definiert 
            SqlParameter param = new SqlParameter();
            param.ParameterName = "@Chat_Id";
            param.Value = InSpielid;
            param.ParameterName = "@chat_user";
            param.Value = InUser;
            param.ParameterName = "@chat_text";
            param.Value = InText;
            param.ParameterName = "@chat_time";
            param.Value = InTime;

            // und letztendlich hinzugefügt werden.
            cmd.Parameters.Add(param);

            // Dann wird das Query Ausgeführt, der Inser ist vollendet
            reader = cmd.ExecuteReader();

        }
        finally
        {
            // Den datenreader schliesen
            if (reader != null)
            {
                reader.Close();
            }

            // und die Verbindung beenden.
            if (conn != null)
            {
                conn.Close();
            }
        }
    }

    public string read(int inSpielid)
    {
    // Die Klasse read, liest den Chat aus der Datenbank aus und packt ihn in einen string, der später ausgegeben werden kann.
    String ergebnisschat; // dies ist die Ausgabevariable, die unseren Chat inhalt beinhalten wird.
        
        try
		        {
                    // Die Connection Null setzen um Falsche Ergebnisse zu vermeiden          
                    SqlConnection conn   = null;
		            SqlDataReader reader = null;
			        // eine Verbindung erstellen
                    conn = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\ASPNETDB.MDF;Integrated Security=True;User Instance=True;");
			        conn.Open();

			        // Zuerst wird der Query String eingelesen
                    SqlCommand cmd = new SqlCommand("SELECT [User], text, time FROM Chat_Gespraeche where id = @Spielid", conn);

			        // Dem dann Parameter definiert 
			        SqlParameter param  = new SqlParameter();
                    param.ParameterName = "@Spielid";
			        param.Value         = InSpielid;

			        // und letztendlich hinzugefügt werden.
			        cmd.Parameters.Add(param);

			        // Dann wird das Query Ausgeführt
			        reader = cmd.ExecuteReader();

			        // und das Ergebniss in dem String gespeichert
                    // um es später auszulesen.
			        while(reader.Read())
			        {
                    //Hier wird der String formatiert und zusammengeführt.
                        ErgebnissChat = String.Join(ErgebnissChat, String.Format("- {0} {1} - {2} </br>", reader["User"], reader["time"], reader["text"]));
			        }
		        }
		        finally
		        {
			        // close reader
			        if (reader != null)
			        {
				        reader.Close();
			        }

			        // close connection
			        if (conn != null)
			        {
				        conn.Close();
        	        }
                }
            
        return ergebnisschat; // Gibt als Resultat den Chat aus, der dem Spieler dann auf dem Bildschirm im Chatbereich
                              // angezeigt wird.
    }

}