• От чего появляется 405 http code?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Если у вас экшен (endpoint) на сервере помечен как HttpGet, а вы отправляете HttpPost запрос. Наоборот так же работает, если отправляете HttpGet запрос на эндпоин, который принимает HttpPost запросы.

    Либо если вы пытаетесь отправить запрос куда-то, где нет принимающего экшена. В вашем случае, после билда формы, у вас не указал экшен. Значит запрос отправляется на стандартынй роут контроллера, на котором у вас нет экщена.

    Второй момент, не используйте для отправки формы, это уже застарелая штука и не очень эффективная. Лучше используйте отправку через Java Script или Ajax

    Ещё UPD. Вы указываете роут для вашего эндпоинты. Если вы используете asp.net core MVC, лучше его убрать, т.к. он вам не нужен для отправки через форму. Скорее всего именно эта штука и сбивает отправку
    Ответ написан
    Комментировать
  • Как удалить элемент из массива в local storage по его индексу?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    localStorage.removeItem('productInfo')
    Ответ написан
  • В каких случаях создавать новые контроллеры?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Если вы работаете с Entity Framework, возьмите себе правило "Одна Entity - Один Controller". Потом сюда можете добавлять контроллеры для логических единиц в виде следующих:
    • Авторизация. Для подобных действий в системе всегда должен использоваться отдельный контроллер. Регистрация, вход в систему, выход из системы, проверка существования пользователя, получить текущего авторизированного пользователя и т.д.
    • Файлы. Загрузить, удалить, получить, конвертировать и т.д.
    • Статистика. Обновить статистику, получить и т.д.
    • Другие действия, действия с которыми не полностью покрывают взаимодействие с самой Entiy, а только лишь с некими данными, но таких действий может быть очень много (Для примера AuthenticationController)
    Ответ написан
    Комментировать
  • Можно ли с нуля обучится программированию, используя только интернет и не тратив деньги?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Вообще да, потому что самообучение это основа всего. Курсы и другие инфоцыгане должны давать вам ответы на вопросы. Вопросы должны возникать в ходе обучения. Если вы не обучаетесь, то никаких вопросов у вас быть не может. Курсы это на тот случай, когда вы не смогли полноценно обучиться некоторым деталям либо вам нужны комплексные знания либо их закрепление.

    Но курсы никогда не дадут вам того результата, который они обещают. Хотят тут могу немного солгать, потому что есть курсы, которые обещают трудоустройство, и это важно! Есть разница между курсами, которые обещают что: "После наших курсов вы сможете смело написать в своём резюме, что вы претендент за з\п 100500 долларов в час!". Хоть сейчас пишите, толку не будет, только деньги выкинете впустую.

    Другой момент, когда вам нужно комплексно и быстро обучиться чему-то и иметь базу. Да, для этого есть интенсив курсы либо онлайн курсы/уроки. Да, они есть и бесплатные (Онлайн), вопрос в технологии и за сколько продают знания, опыт работы с ней.

    Но получить полноценные опыт, который вы сможете применять и сказать, что вы там очень круто - это невозможно. Почему? Тут даже курсы не помогут. Вам нужен наставник, либо какой-то друг/коллега/знакомый, который сможет дать вам задачу и показать направление движения, куда вам нужно двигаться и что учиться, правильный ли вы сделали задачу или нет, над чем стоит поработать. Это всё берётся не с потолка и не приходит само собою, это обобщённые практики на базе опыта, которые вы не сможете получить просто так. Да, и курсы вам тут не помогут. Они дадут вам общие знания для начала вашего пути, но никак не то что нужно для работы.

    UPD: И как говорилось в других ответах, всё зависит от вас. Программирование это та сфера где вам нужно учиться самому всегда и всего. Если вы этого не умеете и сможете так делать, значит это не для вас. Курсы это всего лишь приманка на деньги для тех, кому программирование не под силу, только поймут они это после того, как потратят целое состояние на обучение на курсах.
    Ответ написан
  • Как подружить MVC с реляционной базой данных?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Как подружить MVC с реляционной базой данных?

    Та нормально они дружат через Entity Framework, Dapper либо другие ORM.

    Форма не может передать методу POST сложные типы

    А при чём тут ваш вопрос "Как подружить MVC с реляционной базой данных?", если вы не можете передать с клиента на сервер?

    ModelState требует, чтоб были заполнены и CountryId, и Country одновременно.

    Используйте модели. Просто создайте другой класс (Модель), который будете использовать для get/post запросов (По отдельности, одна модель - один запрос) и вынесите туда всё, что вам нужно. Обычно вам хватит только Id того объект с каким будете работать + поля, которые нужны для создания/обновления/добавления и т.д. Для удаления вам хватит просто Id, для обновления нужны только поля, которые нужно обновить и Id того объекта, который нужно обновлять. И будет вам работа с примитивами )

    Для валидации вообще рекомендую накатить какую-то библиотеку по типу Fluent Validation Api либо Regex (Приоритетно)
    Ответ написан
    Комментировать
  • Почему эта переменная возвращает System.string[] вместо пути?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Ну во-первых, потому что так в документации написано.

    Во-вторых, само название метода GetFiles ничего вам не говорит? Данный метод возвращает список файлов в указанной директории.

    В целевой папке всего один файл

    И что? Значит метод вернёт вам массив с одним элементом. Если вы хотите получить конкретный файл, значит вам нужно что-то на подобии File.Open и т.д.

    значение переменной jar = System.string[]

    Тут по очереди. У вас System.string[] вылез, скорее всего из какого-то Console.WriteLine. Почему? Потому что тип вашего jar и массив типа string. Когда вы пытаете вывести какой-то тип в Console.WriteLine, который не предусмотрен в перегрузках, он будет вам выводить GetType().FullName, т.е. название типа, которое вам и выводится.

    Вообще, очень дурна привычка использовать var, просто не делайте так, а то вы плутаете сами себя и вы не понимаете, что вам должен возвращать метод
    Ответ написан
    8 комментариев
  • NullReferenceException: Object reference not set to an instance of an object?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    В вашем случае, вероятно, компонент TextMeshProUGUI не был найден на объекте, к которому прикреплен скрипт. Исходя из скриншота, вам нужно на объект прикрепить именно TextMeshProUGUI

    662f5c18aea73994361626.png
    Ответ написан
    Комментировать
  • Как создать Сайт на 3-х языках?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Я не знаю, на чём вы пишете, но ответ на ваш вопрос это - локализация. Просто добавьте на свой сайт локализацию. Это отдельная тема при разработке сайтов, обычно реализуется через Key-Value Pair в словарях с переводами. Далее просто найдите как это реализовать на вашем языке программирования (Фреймворке)
    Ответ написан
    Комментировать
  • Как задать img источник из svg inline?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Вы можете вывести изображение в формате svg прямо а html разметку и работать с ним± как с img. Попробуйте открыть svg в любом редакторе текста/кода и перекопировать его содержимое в свой html. Так же рекоменду почитать про svg хотя бы в этой статье
    Ответ написан
  • Как найти работу после курсов по фронтенду?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Как я уже писал в ответе на этот вопрос, с работой в IT сейчас ооочень туго. Перечислю первичные проблемы, которые к этому привели:
    Быстрый рост количество программистов (И других профессий в IT)
    • Большое количество начинающих ITшников
    • Почти еженедельные прогрессы в технологиях
    • Нереально быстро развивающиеся нейросети
    • Мировой кризис вызванный войной


    Обо всём по порядку

    дело во мне лично, или в моем уровне.

    Просто ДА. Тут играет роль несколько факторов. У вас начинающий стек, который программист с кое-каким опытом осваивает за неделю. Стоит ли это того, что бы нанять программиста-новичка (Верстальщика-новчика) за тех самых 300 долларов (Хотя бы), или просто доплатить их человеку, который уже работает на фирме/компании? Тут ответ очевиден.

    Из этого вытекает два момента. Первое - нереальный рост программистов в сфере IT. Все, кто не связан с IT думаю, что это легко. Если у вас не получилось в другой области, у вас есть два варианта: Идти в IT или открыть свой бизнес. Это логика 90% людей стран СНГ. Если взять для примера студента, который реально знает и хочет чего-то достичь и старается, просто по резюме его выбрать среди 500 откликнувшихся нереально.

    Из этого выходит то, что постоянно повышается минимальная планка для получения работы. Если так смотреть, если вы хотите получить работу после курсов, вам нужно идти на курсы и уже что-то знать, а лучше - много знать. Да, вы правильно думаете, для того, что бы учиться, нужно уже много знать.

    Ещё несколько моментов, почему нет фитбека? Тут опять же есть несколько вариантов. По первых, до этого все (Более 90%) заказы были фактически на фриланс/аутсорсинг, то т.к. сейчас много западных компаний отказывается от работы с программистами со стран СНГ (На это есть ряд причин), идёт ожесточенная борьба за заказы между компаниями. Т.к. нет инвестиций из-за границы (Желательно в валюте) зарплаты начинают падать, хотя и не во всех. Те что остались, их достаточно мало по сравнению с тем уровнем, что был ранее.

    Почему большие компании не желают нанимать программистов-новичков? Во-первых, сейчас очень стремительно развиваются нейросети и владельцам компании на много проце заплатить, условно, 100 долларов за нейронку и дасть её в руки опытному программисту, чем ради этого нанимать 10 разработчиков. То, что вы сейчас научились верстать, нейросети делают в 10 раз лучше и в 1 000 000 раз быстрее, на самых новых front-end фреймворках.

    Т.к. рабочих мест нету, .вы просто никому не нужны, потому что html/css/js это стек, которым владеет 90% программистов в IT. Ваша задача составить конкуренцию, а не выучить что-то что относится к IT. Посмотрите вакансии, посмотрите сколько желающих на это рабочее место. Вы сможете сказать, что вы лучше 95% из них? А нужно, что бы так и было.

    В дополнение к этому, повторюсь, рекомендую прочитать этот ответ
    Ответ написан
  • Как из файла txt записать в Dictionary?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Не используйте File.ReadAllLines и подобные, это ошибка и вы не умеете правильно с ним работать, что бы его так использовать. Исправленный код:

    string fileTagsPath = $@"{AppDomain.CurrentDomain.BaseDirectory}tags\{имя файла}.txt";
    using (StreamReader reader = new StreamReader(fileTagsPath))
    {
        while (!reader.EndOfStream)
        {
            string line = reader.ReadLine();
            string[] lineParts = line.Split(", ");
            replacements.Add(lineParts[0], lineParts[1]);
        }
    }
    Ответ написан
    5 комментариев
  • Как понять что я выучил основы C#?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Вообще вы можете язык очень много лет учить. Что вы знаете о языке C#? Можете написать несколько классов, прокинуть соединение к БД, написать несколько linq запросов? А что на счёт делегатов, событий? Рефлексия учится долго. Потоки, и тут имеется ввиду не просто банальный async/await, а прям взаимодействие с памятью и системными потоками. Знаете? Нет? Учить будете? Само собой, что будете, а стоит ли оно того?

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

    А знаете где она используется? Для примера это Dependency Injection контейнер в asp.net.

    А где используются событие? Для примера это handler'ы в таких фреймворках как Windows Forms и WPF.

    Вы не можете сказать, выучили вы это или нет, пока вы не сможете нормально управляться технологией или фреймворком, где эта тема используется повсеместно
    Ответ написан
    Комментировать
  • Как сделать такую верстку на гридах?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Скорее всего, если смотреть на блоках, тут два блока "верхнего уровня". Первый блок (ZOOM 4, Стоматологическая установка) размещены в ряд, тут проблем нет. Второй блок (E&Q MASTER, Микроскоп, 3D томограф, Пьезотом) может разделяться на две колонки. Соответственно, там придётся делать "замеры" не по ширине, а по высоте
    Ответ написан
  • Как решить проблему подключения БД к WPF проекту?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Да, может, т.к. MacOS не поддерживает работу с MSSQL Server в принципе. Для того, что бы получить доступ через виртуалку, нужно изрядно поизвращаться, так что используйте PostgreSql, либо Sqlite, который уже идёт "из коробки" на маках.

    Тут вопрос второй, как вы хотите запустить БД на виртуалке и достучаться к ней из вашего MacOS? Оно не так просто всё делается, что вы просто запустили и оно всё обнаружило. Виртуальная машина это вообще, считайте, отдельный ПК где-то там далеко от вас. Что бы с ним работать, нужно вообще по сети раскидывать соединение (Я так когда-то делал, не знаю, может кто-то скажет, что есть другие варианты) и стучаться по портам как на удалённый БД сервер. Понятно, что оно у вас не видит
    Ответ написан
  • Как изменить объект с вложенными свойствами?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Прочитал комментарии, могу предложить такой вариант:

    function increaseValues(obj) {
        // Увеличиваем значение value и присваиваем ему activeValue + 1
        if (obj.hasOwnProperty('value')) {
            obj.value = obj.user.activeValue + 1;
        }
        // Рекурсивно вызываем функцию для всех вложенных объектов
        for (let key in obj) {
            if (typeof obj[key] === 'object') {
                increaseValues(obj[key]);
            }
        }
    }
    
    const obj = {
        user: {
            activeValue: 2,
            accountList: {
                112211: {
                    value: 1,
                },
                112212: {
                    value: 2,
                },
            },
        },
    };
    
    increaseValues(obj);
    console.log(obj);
    Ответ написан
    2 комментария
  • Как создать многопоточную программу обращающиеся к API?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    обращаться многопоточно к API


    Многопоточно? Как, блин, потоки с IP связанны? Ну закиньте что-то типа такого:

    while(true)
    {
        requestTo('https://domail.com') // Async operation without await
    }


    UPD:

    Если стоит ограничение, тогда лучше так:

    while(true)
    {
    speep(100); // API waiting
    await requestTo('https://domail.com');
    }
    Ответ написан
    2 комментария
  • Как подключить proto файлы к проекту?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Клик сюда
    660ebe1a9e832661047201.jpeg

    Далее сюда
    660ebe371e0df243799837.png

    Подключаете .proto файл. После этого делает Rebuild вашего solution'а. Потом даблклик по проекту, в этом .csproj файле ищите секцию ItemGroup в которой будут ваши Protobuf. К ним додаёте аттрибут ProtoRoot, который (Для удобной работы) должен быть таким же как и пусть в аттрибуте Include без указания названия файла .proto

    UPD:
    Так же стоит отметить, чтобы импортировать в .proto ваш другой .proto, они должны быть хотя бы на одном уровне. Другими словами, вы можете импортировать только файлы, который находятся по архитектуре на том же уровне или ниже, потому что в import запрещено использования символа точки и запятой. Это значит, что вы не сможете выйти на уровень выше
    Ответ написан
    7 комментариев
  • Создается dll вместо exe?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    dll это библиотека. Значит вам нужен проект не библиотека, а, допустим, консольное приложение
    Ответ написан
    Комментировать
  • Selenium не может нажать на radio button из- за befor, что делать?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    В Selenium должна быть функция ожидания появления элемента. Вот отличная статья на Хабре по Selenium + Python для ожидания появления элемента. Так же можете использовать XPath, что бы более эффективно находить нужные элементы. Вот отличная статья на Хабре и по этому поводу
    Ответ написан
    Комментировать
  • Какую должность я занимаю?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    IT-Разнорабочий, оплата почасовая высчитывается по формуле:
    Количество отработанных часов * стоимость часа работы * коэффициент тяжести работы


    Стоимость часа работы высчитывается по формуле:
    (Количество лет опыта работы с текущей задачей + 0.2) * стандартная оплата за час работы


    Все коэффициенты можете найти в таблице ниже...
    Ответ написан
    4 комментария