Какова цель класса контекста db в asp.net mvc

Я новичок в mvc и занимаюсь некоторыми учебниками, чтобы получить поддержку, но в некоторых из этих руководств я столкнулся с примером с классом DbContext asp.net mvc5 с учебником EF6

Я попытался изучить информацию о классе DbContext, но не смог получить какую-либо информацию, которая сделала меня более мудрой! все, что я мог найти, - это больше те же уроки с небольшой информацией, я также посмотрел класс на msdn DbContext Class.

Я сделал предыдущие уроки без класса контекста db, и он отлично работает, и мой вопрос заключается в том, что мне нужно использовать класс контекста и каковы преимущества использования класса DbContext?

Любая помощь была бы оценена благодарностью.

Ответ 1

Я бы сказал сначала, что класс DbContext относится к Entity Framework (EF), но тогда теги вопроса подскажут, что вы поняли, что многое из себя. В типичном использовании вывод из класса DbContext - это просто способ включить доступ к данным на основе EF в ваше приложение. Класс, который происходит от DbContext, является, по сути, уровнем доступа к данным вашего приложения.

Итак, если вы хотите сделать доступ к данным с Entity Framework, DbContext - это то, что вы хотите.

Ответ 2

Вы можете придумать DbContext как соединение с базой данных и набор таблиц, а DbSet - как представление самих таблиц. DbContext позволяет связать ваши свойства модели (предположительно, используя Entity Framework) с вашей базой данных со строкой соединения.

Позже, когда вы хотите обратиться к базе данных вашего контроллера для обработки данных, вы ссылаетесь на DbContext. Например,

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

    public virtual DbSet<Site> Sites { get; set; }
}

ссылается позже в контроллере, например

private UserSitesContext dbUser = new UserSitesContext();

var queryExample = from u in dbUser.Sites select u;

:base("connection") относится к вашей строке соединения, найденной в Web.config.

Ответ 3

DbContext - это класс, предоставляемый Entity Framework для установления соединения с базой данных, запрос к соединению db и close.

Расширение DbContext позволяет определять модель базы данных с помощью DbSet (определенный Set сопоставлен с таблицей или более), создавать базу данных, запрашивать базу данных...

Ответ 4

dbContext в Entityframework работает, как DAL Data Access Layer, устанавливает соединение с вашей базой данных.