Метод AddAsync () отсутствует - PullRequest
0 голосов
/ 30 апреля 2019

Я использую Entity Framework Core.Я хочу создать асинхронный метод, который создаст нового пользователя в моей базе данных, я включил все необходимые мне библиотеки, но некоторые методы, которые должны работать с базой данных, отсутствуют, у меня есть почти все асинхронные методы, но мне не хватает AddAsync иRemoveAsync.Когда я набираю AddAsync вручную, я получаю следующее сообщение об ошибке: «Ошибка CS1061« DbSet »не содержит определения для« AddAsync », и нет доступного метода расширения« AddAsync », принимающего первый аргумент типа« DbSet »(выотсутствует директива using или ссылка на сборку?) "

Класс, в котором создан метод, содержит следующий код и библиотеки:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.Entity;
using System.Data;
using Microsoft.EntityFrameworkCore;
namespace ClassLibrary
{
    public class Class1 : Interface1
    {
        public async Task AddKorisnik(Korisnici k)
        {
            using (ExtentEntities context = new ExtentEntities())
            {
                context.Korisnici.AddAsync();
                await context.SaveChangesAsync();
            }
        }
    }
}

Класс, в котором используется DbContext, следующий:

namespace ClassLibrary
{
    using System;
    using System.Linq;
    using System.Data.Entity;
    using System.Data.Entity.Infrastructure;

    public partial class ExtentEntities : DbContext
    {
        public ExtentEntities()
            : base("name=ExtentEntities")
        {
        }

        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            throw new UnintentionalCodeFirstException();
        }

        public virtual DbSet<Korisnici> Korisnici { get; set; }
    }
}

1 Ответ

1 голос
/ 30 апреля 2019

Нет ничего асинхронного с добавлением объекта в память DbSet<T>. Вы должны использовать синхронный метод Add, чтобы сделать это.

SaveChangesAsync() - это метод, который фактически асинхронно подключается к базовой базе данных.

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