Как реализовать строку подключения DbContext in.NET ядро?
моя ситуация очень похожа на эту ссылку или, по крайней мере, мой код похож, и я пытаюсь найти способ применить этот же метод в синтаксисе .NET Core.
мой конкретный код выглядит следующим образом:
и я нашел следующую ссылку добавление DbContextOptions при запуске.cs не регистрирует хранилище данных на сайте и мне интересно, если простой protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) будет достаточно, чтобы исправить мое соединение или нет?
мне нужна такая услуга в моем запуске.в CS?
3 ответов
другой вариант-вызвать базовый конструктор, который принимает DbContextOptions:
как правило, вы захотите прочитать его из config при запуске, а затем использовать строку подключения для настройки службы Entity Framework DbContext для вашего процесса.
1) добавьте строку в appsettings.в JSON:
2) прочитайте строку в вашем запуске.класс cs (после того, как метод запуска вызывается для построения конфигурации-так обычно в методе ConfigureServices), как это:
3) при использовании Entity Framework добавьте базу данных контекстная служба (MyDbContext-это класс контекста, созданный EF). Вы также хотите рассказать встроенной инъекции зависимостей, как создать экземпляр контекста базы данных:
где IMyDbContext (в его упрощенном) просто интерфейс, который вы извлекли из своего MyDbContext
4) Теперь вы можете определить свой контроллер, чтобы взять MyDbContext, и DI позаботится о его создании и передаче его при вызове контроллера:
C # — CS1503 — Аргумент 1: невозможно преобразовать из «строки» в «int»
Прежде чем ответить, я снова и снова проверял свой код, а также около часа искал похожий ответ. Компилятор продолжает выдавать ошибку CS1503, я не совсем уверен, как это исправить. Это строки 36 и 37, и я прокомментировал строки с ошибками 36 и 37. Он предназначен для базы данных, которая должна искать номерной знак и выводить другие данные в таблицу.
3 ответа
Как объяснено в комментариях, GetString также GetInt32 требует параметр типа integer. Это целое число — позиция поля в списке выбора полей. Если вы не хотите использовать позицию, вы можете написать
И эту простую строку можно легко преобразовать в метод расширения, добавив метод в статический класс, чей код
И это, наконец, позволяет писать
Конечно, то же самое можно написать и для GetInt32, который принимает имя поля. Кстати, если я не ошибаюсь, версия MySql имеет эти перегрузки прямо в сборке
Как исправить ошибку компилятора CS1503?


Собственно у DXMenuItem есть конструктор с параметрами string, void.Так вот ему не нравится как я вызываю функцию Count с параметрами.Не может конвертировать тип.Как мне правильно вызвать функцию с параметрами?Подозреваю что надо использовать лямбда-функцию,но не уверен.
![]()
У конструктора DxMenuItem , всего две перегрузки с двумя параметрами:
Вероятнее всего имелась ввиду вторая перегрузка принимающая обработчик click.
В этом случае действительно можно передать lambda
![]()
Дело в ожидаемых типах параметров конструктора DXMenuItem . Вряд ли тип второго параметра void (.
Собственно у делегата DXMenuItem есть конструктор с параметрами string, void.
Маловероятно также, что тип DXMenuItem является делегатом. Похоже, в процитированной фразе Вы пытаетесь описать сигнатуру метода: параметр — string , возвращаемое значение — void .