2014-12-02 82 views
1

所以我使用实体框架代码第一次创建在现有的远程SQL Server数据库表,当我做的:都不会被创建代码第一次没有创建表

Enable-Migrations 
Add-Migration Inital 
Update-Database 

不表。这是我的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; } 

    } 
} 

我尝试添加在Web.config的连接字符串手册册本:

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

之后,我加入服务器资源管理器中一个新的连接,成功测试它和重复第一步。没有表格了。

我在做什么错?

+0

的,什么是生成的迁移文件看起来像这样? – 2014-12-02 16:08:56

+0

不知道,但我认为你必须使用连接字符串的名称:public ApplicationDbContext():base(“name = ApplicationServices”)。你在哪里放置你的映射? – 2014-12-02 16:09:49

+0

是的,我是个白痴。当我改变它的名字时,它就像一个魅力。 – 2014-12-02 16:11:06

回答

4

变化ApplicationDbContext cnstructor到

public ApplicationDbContext() 
      : base("ApplicationServices") 
     { 
     } 

您将使用连接字符串从你的web.config

+2

让我只是开枪自杀。马上回来。 – 2014-12-02 16:10:07

+1

好吧,我回来了,这确实是问题。爱你。 – 2014-12-02 16:11:33