Esempio n. 1
0
        /// <summary>
        /// Führt das übergebene <paramref name="SQL_Statement"/> auf dem Microsoft SQL-Server aus und gibt das Ergebnis als <see cref="SQL_Result"/> zurück.
        /// </summary>
        /// <param name="SQL_Statement">Die Zeichenfolge, die die SQL-Abfrage enthält.</param>
        /// <returns>Gibt das Ergebnis der SQL-Abfrage zurück.</returns>
        public SQL_Result ExecuteSQL(string SQL_Statement)
        {
            SQL_Result result = new SQL_Result(false, null);

            if (ConnectionState != ConnectionState.Open && Connect() != ConnectionState.Open)
            {
                return(result);
            }
            SqlCommand cmd = new SqlCommand();

            cmd.CommandText = SQL_Statement;
            cmd.Connection  = SQL;
            DataSet        ds  = new DataSet();
            SqlDataAdapter sda = new SqlDataAdapter();

            sda.SelectCommand = cmd;
            try
            {
                sda.Fill(ds);
                result.Data    = ds;
                result.Success = true;
            }
            catch
            {
                result.Success = false;
            }
            return(result);
        }
Esempio n. 2
0
        /// <summary>
        /// Asnynchroner Aufruf von <see cref="ExecuteSQL(string)"/>. Sobald eine Antwort von dem Microsoft SQL-Server vorliegt wird <paramref name="CallBack"/> aufgerufen.
        /// </summary>
        /// <param name="SQL_Statement">Die Zeichenfolge, die die SQL-Abfrage enthält.</param>
        /// <param name="CallBack">Der <see cref="Delegate"/>, der aufgerufen wird, wenn eine Antwort von dem Server vorliegt.</param>
        public async void ExecuteSQL(string SQL_Statement, Action <SQL_Result> CallBack)
        {
            SQL_Result results = new SQL_Result(false, null);
            await Task.Run(() => { results = ExecuteSQL(SQL_Statement); });

            CallBack.Invoke(results);
        }