Ответы пользователя по тегу C#
  • Разбить проект на несколько файлов?

    Глобальных переменных и методов в c# нет. Можете сделать статический (или обычный) класс и разместить в нём статическое поле(свойство) и статические методы. Получится примерно то что нужно.

    Партиал всего лишь позволяет разместить описание класса в нескольких файлах для удобства.

    Вообще в c# все классы, ничего вне класса (структуры) создать нельзя. Т.е. глобальных переменных и методов нет. Но статический метод и статическое поле (свойство) это примерно то, что вам нужно.
    Ответ написан
    Комментировать
  • Тип приложения-сервера, хостящегося на Windows Server

    wcf может хоститься в IIS например. А так, да, сервисы. А какого рода «ПО централизованного управления» нужно? Перезапустить службу на десяти машинах?
    Ответ написан
  • Очередной вопрос про фоновое выполнение функций?

    В C# 5.0 и .NET 4.0 появиились замечательные async\await, полностью убирающие простынки коллбэков. Почитайте про них.
    Ответ написан
    Комментировать
  • ASP.net серверная задержка. Чат на long polling?

    а) не долбите базу каждые 500 милисекунд. Если у вас в чате 100 человек, получается уже 200 запросов к БД в секунду. Не боитесь что база просядет? Сделайте статик класс, который в котором будет храниться ваш чат. В нем понадобится по сути 2 метода: добавить сообщение (добавляется во внутренее хранилище и в БД) и получить сообщения (из внутреннего хранилища). В статическом конструкторе при старте приложения загружаете последние сообщения в память. Учтите что надо делать класс thread-safe.
    б) потоки обработки лочьте на Monitor, а при поступлении сообщения сбрасывайте его из статик класса. (см тут: stackoverflow.com/questions/12522714/thread-syncronization-with-eventhandler )
    в) думаю вам идеально подойдут тут Asynchronous Controllers из MVC. Не уверен, что в ASP.NET можно отправить thread в бэкграунд освободив поток обработки.
    г) тормозит не «весь сервер», а поток из пула потоков обработки запросов. Хотя если у вас в пуле только 1 поток, то да — весь сервер
    д) прежде чем браться за эту задачу рекомендую разобраться с потоками поплотнее чем «я слышал про». Все таки .NET не php, и тут уровень вхождения выше, хотя возможно кажется, что тут все легко.
    е) я понимаю когда люди пишут карова или сонце, ну как слышу так и пишу. Но что, скажите, что заставляет вас писать «в этом случаи»? Даже произносится же через е.
    Ответ написан
  • Генерация изображения ASP.NET+C#

    Реально. Терпимая.
    Ответ написан
    Комментировать