Настраиваем контекст бд и migration (entity framework)

Создадим контекст базы данных. Настроим логирование всех sql запросов в debug вывод. Настроим migration для обновления бд.

  1. Создадим класс — контекст базы данных c логированием sql запросов в debug
    using System;
    using System.Collections.Generic;
    using System.Data.Entity;
    using System.Diagnostics;
    using System.Linq;
    using System.Web;
    
    namespace WebApp.Databases
    {
        public cla ss DefaultDatabase : DbContext
        {
            public DefaultDatabase()
              : base("DefaultConnection")
            {
                Database.Log = Logger;
            }
            // TODO: Add DbSet
            // public DbSet<Post> Posts { get; set; }
    
            protected override void OnModelCreating(DbModelBuilder modelBuilder)
           {
                // TODO: Add relationships
                // modelBuilder.Entity<Section>().HasMany<ProductsFilter>(x => x.Filters).WithMany
    (x => x.Sections).Map(m => m.ToTable("SectionProductsFilters").MapLeftKey("SectionId").MapRightKey
    ("FilterId"));
                // modelBuilder.Entity<ProductsAttribute>().HasRequired<ProductsFilter>
    (x => x.Filter).WithMany().HasForeignKey(x => x.FilterId).WillCascadeOnDelete(false);
            }
            private void Logger(string logString)
            {
                Debug.WriteLine(logString);
            }
        }
    }
    
    
  2. Выполним команду в консоли диспетчера пакетов
    Enable-Migrations -ContextTypeName WebApp.Databases.DefaultDatabase
    
  3. Добавим строчку в Global.asax
    Database.SetInitializer(new MigrateDatabaseToLatestVersion<DefaultDatabase, Configuration>());
    

Ссылки:

По теме:
Список перечислений в entity framework

Entity Framework может хранить  перечисления в бд как int. А список перечислений ef уже не умеет хранить, но позволяет создавать сложные Read more

Логирование entity framework запросов

В прошлых заметках я описывал как поднять elmah и nlog логирования. Сейчас опишу как прикрутить это к entity framework. Реализуем Read more

Выбираем технологии и инструменты для разработки веб приложений

1 Выбор и настройка инструментов для разработки фронтенда (только самые важные): 1.1 Twitter bootstrap — фреймворк позволяет писать качественную верстку Read more

Увеличим размер загружаемого файла (asp.net mvc)

Добавим такие строчки в web.config: <system.web> <httpRuntime targetFramework="4.5" maxRequestLength="50000" /> </system.web> ...... <system.webServer> <security> <requestFiltering> <requestLimits maxAllowedContentLength="50000000" /> </requestFiltering> </security> Read more

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *