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