使用Code First方法

时间:2016-02-17 04:34:44

标签: asp.net-mvc ado.net asp.net-identity database-migration

我有一个数据库,我使用edmx创建了ADO.NET模型的数据库

现在我想使用CodeFirst方法更改该数据库。我也使用Asp.Net Identity会员资格。

我想添加PersonFilesFilePaths

public abstract class Person
{
    ///other relevant properties

    public virtual ICollection<File> Files { get; set; }
    public virtual ICollection<FilePath> FilePaths { get; set; }
}

文件模型

public class File 
{
    public int FileId { get; set; }
    [StringLength(255)]
    public string FileName { get; set; }
    [StringLength(100)]
    public string ContentType { get; set; }
    public byte[] Content { get; set; }
    public FileType FileType { get; set; }
    public int PersonId { get; set; }
    public virtual Person Person { get; set; }
}

FilePath模型

public class FilePath
{
    public int FilePathId { get; set; }
    [StringLength(255)]
    public string FileName { get; set; }
    public FileType FileType { get; set; }
    public int PersonID { get; set; }
    public virtual Person Person { get; set; }
}

所以我开始喜欢关注

  1. web.config

    中添加了以下connectionstring

    <add name="ProjectContext" connectionString="Data Source=***.***.*.***;Initial Catalog=MYDB;Persist Security Info=true;User ID=**;Password=*** " providerName="System.Data.SqlClient" />

  2. 然后我创建了文件夹cal DAL,然后添加了上下文文件

    enter image description here

    public class ProjectContext : DbContext
    {
       public DbSet<File> Files { get; set; }    
       public DbSet<FilePath> FilePaths { get; set;     
    }
    
  3. 然后我陷入了下一步

    当我要通过在包管理器控制台(PMC)中键入以下内容来添加新迁移时:

    add-migration Files

    我在软件包管理器控制台中收到以下错误

      

    创建DbModelBuilder或从创建的DbContext编写EDMX   不支持使用Database First或Model First。 EDMX只能是   从不使用现有的Code First DbContext获得   DbCompiledModel。

    其实我正在关注this tutorial

0 个答案:

没有答案