迁移时拒绝访问ContextModelSnapshot

问题描述 投票:1回答:2

我使用EF Core 2.0在我的ASP.NET Core项目中添加了一个迁移。我在包管理器控制台中运行了“Add-Migration”migrationName`命令。迁移已成功添加到我的迁移文件夹,但是,在尝试更新快照时,我收到此错误:

对“C:\ path \ to \ snapshot \ DbContextModelSnapshot.cs”路径的访问被拒绝。

现在我在我的迁移文件夹中有一个新的迁移,但是一个旧的快照,因为它目前无法更新。迁移保存在与快照相同的文件夹中,并且所有用户都具有对该文件夹的读/写访问权限。

我该如何解决?

entity-framework-core ef-migrations snapshot
2个回答
2
投票

我猜测:你有TFS源代码控制下的解决方案,服务器工作区。在您最初签入代码后,该文件变为只读。好像PM不会自动检出文件(或添加迁移文件)到源代码管理。因此,为了解决这个问题:在运行命令之前,请检查快照,然后在运行迁移后将新生成的文件添加到源代码管理中。


1
投票

我遇到过同样的情况。

Access to the path 'C:\repos\ProjectName\Migrations\ProjectNameDbContextModelSnapshot.cs' is denied.

右键单击文件projectDbContextModelSnapshot.cs与Windows资源管理器,看到有只读标志,并删除此复选框。问题解决了。

© www.soinside.com 2019 - 2024. All rights reserved.