• Как работает этот SQL запрос?

    Muxto
    @Muxto Автор вопроса
    По стандарту SQL-92
    1. Выполняется FROM - формируется рабочая таблица
    2. к этому результату применются предикаты предложения WHERE
    3. GROUP By
    4. HAVING
    5. SELECT
    6. ORDER BY (формально не входит в определение SELECT)

    (C) Джо Селко. SQL для профессионалов. Програмирование.
    Ответ написан
    Комментировать
  • Web сервер на C#, как сделать API для клиента?

    Muxto
    @Muxto Автор вопроса
    Спасибо за ответы.
    Я почитал про перечисленные технологии и в итоге выбрал WCF - он показался самым легким для реализации (msdn.microsoft.com/ru-ru/library/ms734712%28v=vs.1...).
    Вопрос закрыт.
    Ответ написан
    Комментировать
  • keypress event handler в консоли

    Muxto
    @Muxto Автор вопроса
    сам спросил — сам ответил.
    вообще я хотел, чтобы консоль при нажатии на клавишу создавала готовый аргумент вроде KeyEventArgs, который потом легче обработать.
    уже забыл про этот вопрос, случайно наткнулся на код в книжке Шилдта.

    // спасибо герберту шилдту за код
    // и за наше счастливое детство
    
    using System;
    using System.ComponentModel;
    
    // создаем класс для обработчика
    class myKeyEventArgs : HandledEventArgs
    {
        // нажатая кнопка
        public ConsoleKeyInfo key;
    
        public myKeyEventArgs (ConsoleKeyInfo _key)
        {
            key = _key;
        }
    }
    
    // класс события
    class KeyEvent
    {
        // событие нажатия
        public event EventHandler<myKeyEventArgs> KeyPress;
    
        // метод запуска события
        public void OnKeyPress(ConsoleKeyInfo _key)
        {
            KeyPress(this, new myKeyEventArgs (_key));
        }
    }
    
    // прога
    class KeyEventDemo
    {
        static void Main()
        {
        	// объект события
            KeyEvent kevt = new KeyEvent();
            
            // кнопа
            ConsoleKeyInfo key;
    
            // обработчик
            kevt.KeyPress += (sender, e) =>
            {
            	// отслеживает нажатый альт
                if (e.key .Modifiers == ConsoleModifiers .Alt )
                    Console.WriteLine(" ALT! " );
    
                // и позволяет вводить только цифры и точку
                char ch = e.key .KeyChar  ;
                if (!char.IsDigit(ch)&& ch != '.')
                {
                    e.Handled = true;
                }
                else Console.WriteLine(" нажато: " + ch );
            };
    
            Console.WriteLine("вводи символы, друг");
            // пока точку не нажмешь
            do
            {
            	// нажатая не отображается
                key = Console.ReadKey(true);
                // событие произошло
                kevt.OnKeyPress(key);
            }
            while(key.KeyChar != '.');
        }
    }
    
    Ответ написан
    Комментировать