Ответы пользователя по тегу C#
  • Почему In Memory Database не автогенерирует int свойство?

    @netcore Автор вопроса
    Решил по-другому в OnModelBuilding

    if (DataBase.IsInMemory())
    var autoGenIntProperties = modelBuilder.Model.GetEntityTypes()
                    .SelectMany(t => t.GetProperties())
                    .Where(p => p.ClrType == typeof(int) && p.ValueGenerated != ValueGenerated.Never);
    
                foreach (var property in autoGenIntProperties)
                    property.SetValueGeneratorFactory((p, t) => new InMemoryIntegerValueGenerator<int>(p.GetIndex()));


    Это скорее всего потому что:
    1. Ключи понятно как инкрементить, а кастомные поля нет
    2. У каждой бд реализация этого кейса разная, по этому нужно явно указывать в InMemory как отыгрывать этот кейс

    Странно что в апишке не предусмотрели этот кейс обязательного использования инкрементации при инициализации, что бы юзеры не ломали голову часами
    Ответ написан
    Комментировать
  • Какие книги подойдут новичку по языку C#?

    @netcore
    Я как делал:
    Купил справочник c# толстенный.
    Читаешь первые 4 главы как там советуют, въезжаешь, переписываешь код, понимаешь как устроен язык и синтаксис в принципе

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

    Тупо копипастишь код лишь бы заработало.

    Потом смотришь непонятные блоки кода. Что не понял - лезешь в справочник и читаешь как это устроено и работает, где то исправляешь ошибки свои.

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

    + Раз в день читаешь главу, не особо стараясь вникать. Зачем? А затем что когда в жизни столкнешься с проблемой, вспомнишь примерно как это решать и в какую сторону гуглить.

    Справочник год лежал на столе, был отличным помощником в начале пути.
    До сих пор иногда туда заглядываю
    Ответ написан
  • Как создать программу, которая при нажатии кнопки"старт" записывает, какие сайты посетил пользователь и сколько времени провел на них?

    @netcore
    У окон есть заголовки.
    Смотрим по запущенным программам браузер ли это
    Пишем заголовок и время активного
    Ответ написан
    Комментировать
  • Как эмулировать нажатия на кнопки в веб?

    @netcore
    что происходит по нажатию кнопки?
    Если это какой то AJAX запрос на сервер, то:
    Открываешь панель разработчика в браузере, вкладку Network, жмешь на кнопку.
    Смотришь тело и заголовки запроса.
    Дальше читаешь про класс HttpClient и реализуешь такой же запрос через него.
    Ответ написан
    Комментировать