• Как подключить USB модем к роутеру без USB?

    Spetros
    @Spetros
    IT-шник
    Если чип поддерживает USB, то распаять разъем и прошить прошивкой с поддержкой USB. Если нет, то витая пара плюс комп раздающий 4G-интернет.
    Ответ написан
    1 комментарий
  • Почему Thread работает так?

    ayazer
    @ayazer
    Sr. Software Engineer
    потому что когда отработает Console.WriteLine то i уже станет 2.

    for (int i = 0; i < 2; i++)
    {
        var index = i;
        var thread = new Thread(() =>
        {
            Console.WriteLine("main index: " + index);
    
        });
        thread.Start();
    }
    
    //main index: 1
    //main index: 0
    Ответ написан
    Комментировать
  • Почему Thread работает так?

    Это не тред виноват, а замыкания.
    Когда ты ссылаешься в лямбде на переменную - к ней обращение происходит по ссылке.
    Вот и получилось, что на момент запуска значение i уже 2.
    Решить эту проблему можно, если скопировать значение i в новую переменную вот так:
    for (int i = 0; i < 2; i++)
    {
        var i2 = i;
        Thread thread = new Thread(() =>
        {
            Console.WriteLine("main index: " + i2);
        });
        thread.Start();
    }
    Ответ написан
    Комментировать
  • Hе получается преобразовать символы в byte, как сделать так чтобы это работало?

    ayazer
    @ayazer
    Sr. Software Engineer
    var str = "test12!#@<смайлик>";
    
    var utf16bytes = Encoding.Unicode.GetBytes(str);
    var utf16reversed = Encoding.Unicode.GetString(utf16bytes); #test12!#@<смайлик>


    вы что-то где-то путаете, проверяйте свой хендлер и то, как и в какой кодировке вы данные отправляете. та-же разница в BE/LE между машинами может к веселым багам приводить. Ну и в целом - так как делаете вы - делать нельзя. Если у вас на 256 СИМВОЛ попадет "<смайлик>" (т.е. суррогат, который состоит с 2ух реальных символов), но у вас возникнет ошибка при декодинге. Потому как минимум - нужно использовать енкодер со состоянием (var enc = Encoding.Unicode.GetEncoder(); ...). Ну или реализовать это самому через проверку char.IsLowSurrogate/char.IsHighSurrogate.

    UPD: даже у тостера оказывается проблема с суррогатами, вместо <смайлик> должен был быть U+1F60A ( https://www.compart.com/en/unicode/U+1F60A)
    Ответ написан
    Комментировать
  • Какие обязанности в команде у джуна .Net?

    @mkone112
    Начинающий питонист.
    Устраивался с большим желанием постоянно изучать и применять что-то новое, быстро вырасти как специалист, дойти до уверенного миддла, а в итоге занимаюсь штамповкой однотипных задач, не связанных с веб-разработкой и с инструментами .NET.

    Всю эту простыню ты должен был вывалить тимлиду, и если ты слишком хорош для таких задач - автоматизируй процессы так чтобы эти однотипные задачи либо не появлялись, либо выполнялись в максимально короткие сроки.
    Ответ написан
    Комментировать
  • Как сделать браузер на c#?

    HemulGM
    @HemulGM
    Delphi Developer, сис. админ
    Ты не делаешь веб браузер, ты делаешь приложение с встроенным веб браузером. Судя по всему на WinForms с использованием WebBrowser (WebView) компонента. А это значит, что ты используешь IE (Internet Explorer) движок, при чем версия там по умолчанию 9 или даже 7, в которой не поддерживается много чего из современного веба. Именно по этому ничего и не открывается. Это можно исправить частично, принудительно установив версию движка (макс. 11) через реестр для своего приложения. Но это костыль и не решит почти ничего в целом.

    Для нормальной работы сайтов нужно использовать движок CEF, который есть для многих языков.

    Есть ещё WebView2 в винде, но он будет работать только в свежих ОС (только вин10 и вин11)
    Ответ написан
    2 комментария
  • Как выучить английский начинающему программисту?

    sloboda
    @sloboda
    Java QA Automation
    Приложение на смартфоне duolingo
    Оно бесплатное
    Слушайте подкасты IT от Luxoft и др. Так как многие
    слова поймете из контекста, а спикеры все-таки не англоговорящие и потому говорят не так быстро,
    таким образом начнете понимать на слух.
    Найдите единомышленников и старайтесь общаться с ними на английском. Пусть будет криво. Зато в мозгу преодолеется барьер.

    Окружите себя языком.

    Не используйте русский в меню смартфона, в меню всяких программ и операционной системы.
    Всё, что возможно, замените на английский.

    Все эти способы бесплатны и эффективны.
    Ответ написан
    Комментировать
  • Полиморфизм в базе данных, как организовать таблицы?

    @d-stream
    Готовые решения - не подаю, но...
    Ну можно ориентироваться на contragent_type - который определит как минимум 3 сущности: организация (юрлицо), человек (физлицо) и ИП (физлицо с элементами организации), плюс с недавнего времени еще подветочка ИП - самозанятый. В таком ключе - seller - это всегда contragent, а вот в зависимости от contragent_type - в рамках контрагента - уже несколько пересекающихся сущностей. Притом организация - будет включать в себя как минимум кучку персон (директор, бухгалтер, контактные лица, ответственные, подписанты и т.п.). Притом в силу существующих реалий множественности компаний - одно и то же лицо может фигурировать и как фл и как контактная персона в нескольких компаниях и как директор-бухгалтер в еще нескольких...
    Ответ написан
    Комментировать
  • Полиморфизм в базе данных, как организовать таблицы?

    Maksclub
    @Maksclub
    maksfedorov.ru
    Разделяйте ответственности
    OrganisationSeller и PersonSeller могут наследоваться от Seller
    и для реализации такого можно реализовать такой паттерн Single Table Inheritance

    А вот обычные Organisation и Person связывайте с абстрактным Seller через обычную связь. Конкретные наследники будут лежать в зависимости от типа

    Итого будет так:
    (OrganisationSeller extends Seller) будет объектом Organisation.seller

    Готовые решения:
    Ответ написан
    Комментировать