代码优先不创建表

And*_*lva 2 entity-framework ef-code-first ef-migrations

所以我使用Entity Framework Code First在现有的远程SQL Server数据库中创建表,当我这样做时:

Enable-Migrations
Add-Migration Inital
Update-Database
Run Code Online (Sandbox Code Playgroud)

不会创建任何表.这是我的DbContext:

using Microsoft.AspNet.Identity.EntityFramework;
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using TrabalhoDefinitivo.Models;
using TrabalhoDefinitivo.ViewModels;

namespace TrabalhoDefinitivo.DAL
{
    public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
    {
        public ApplicationDbContext()
            : base("DefaultConnection")
        {
        }

        public DbSet<Sale> Sales { get; set; }
        public DbSet<Album> Albums { get; set; }
        public DbSet<AlbumType> AlbumTypes { get; set; }
        public DbSet<SaleAlbum> SaleAlbums { get; set; }

    }
}
Run Code Online (Sandbox Code Playgroud)

我尝试在Web.config中添加一个新的连接字符串manuall:

<add name="ApplicationServices"
         connectionString="Data Source=gandalf.dei.isep.ipp.pt\sqlexpress;
            Initial Catalog=xxxx;
            User ID=xxxx;
            Password=xxxx"
         providerName="System.Data.SqlClient" />
Run Code Online (Sandbox Code Playgroud)

之后,我在服务器资源管理器中添加了一个新连接,并成功测试并重复了第一步.再没有表格.

我究竟做错了什么?

Evg*_*rov 5

将ApplicationDbContext cnstructor更改为

 public ApplicationDbContext()
            : base("ApplicationServices")
        {
        }
Run Code Online (Sandbox Code Playgroud)

这样您将使用Web.config中的Connection字符串

  • 让我自己开枪吧.马上回来. (2认同)
  • 好吧,我回来了,确实是这个问题。爱你。 (2认同)