当前位置:  开发笔记 > 编程语言 > 正文

当脚手架控制器vs2015时,表中已存在错误键

如何解决《当脚手架控制器vs2015时,表中已存在错误键》经验,为你挑选了1个好方法。

我正在尝试使用VS2015关注专业MVC 4中的音乐商店示例.我有脚手架音乐商店控制器的问题.每次我尝试创建控制器时,都会弹出一个错误窗口,其中唯一的信息是:"运行所选代码生成器时出错:'表中已存在密钥.'"

我一直在寻找这个特定的错误,但大多数脚手架错误解决方案似乎是关于web.config中的错误,但我的web.config中没有任何改变,它是创建新项目时创建的默认错误.

我已经尝试创建另一个MVC项目并再次编码模型但我仍然收到错误.

我正在使用Microsoft Visual Studio Enterprise 2015版本14.0.247200更新1,如果这有帮助.

我在Models文件夹中创建的类如下所示,与本书中的类完全相同:

public class Album
{
    public virtual int AlbumId { get; set; }
    public virtual int GenreId { get; set; }
    public virtual int ArtistId { get; set; }
    public virtual string Title { get; set; }
    public virtual decimal Price { get; set; }
    public virtual string AlbumArtUrl { get; set; }
    public virtual Genre Genre { get; set; }
    public virtual Artist Artist { get; set; }
}

public class Artist
{
    public virtual int ArtistId { get; set; }
    public virtual string Name { get; set; }
    public virtual string Description { get; set; }
}

public class Genre
{
    public virtual int GenreId { get; set; }
    public virtual string Name { get; set; }
    public virtual string Description { get; set; }
    public virtual List Albums { get; set; }
}

谢谢你的帮助



1> 小智..:

我有同样的问题.我正在使用Visual Studio Communitty 2015.尝试使用代码的模型类:

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

    public DbSet Albums { get; set; }
    public DbSet Artists { get; set; }
    public DbSet Genres { get; set; }
}

在添加控制器窗口中,使用MusicStoreDB作为上下文.

工作代码可以在这里找到.

第4章的代码看起来像是从数据库生成的,所以MusicStoreDB类略有不同.

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有