我使用EF Core 2.0在我的ASP.NET Core项目中添加了一个迁移。我在包管理器控制台中运行了“Add-Migration”migrationName`命令。迁移已成功添加到我的迁移文件夹,但是,在尝试更新快照时,我收到此错误:
对“C:\ path \ to \ snapshot \ DbContextModelSnapshot.cs”路径的访问被拒绝。
现在我在我的迁移文件夹中有一个新的迁移,但是一个旧的快照,因为它目前无法更新。迁移保存在与快照相同的文件夹中,并且所有用户都具有对该文件夹的读/写访问权限。
我该如何解决?
我猜测:你有TFS源代码控制下的解决方案,服务器工作区。在您最初签入代码后,该文件变为只读。好像PM不会自动检出文件(或添加迁移文件)到源代码管理。因此,为了解决这个问题:在运行命令之前,请检查快照,然后在运行迁移后将新生成的文件添加到源代码管理中。
我遇到过同样的情况。
Access to the path 'C:\repos\ProjectName\Migrations\ProjectNameDbContextModelSnapshot.cs' is denied.
右键单击文件projectDbContextModelSnapshot.cs与Windows资源管理器,看到有只读标志,并删除此复选框。问题解决了。