无法更新数据库“* .mdf”,因为只读EntityFramework

我有一个C#.NET Framework 4.0桌面应用程序,entity framework为DAL。 当尝试将数据保存到任何机器上的DBContext但我的时候,我收到了一个例外

Failed to update database "*.mdf" read only 

我把我的数据库放在.exe文件附近,在文件夹“DAL / AppData”中。

如何在其他计算机上允许写入权限? 我可以通过编程方式完成吗?

我已经读过我可以把DB放到AppRoaming文件夹中,但这不是我的变种。

提前致谢。

我把我的数据库放在.exe文件附近,在文件夹“DAL / AppData”中。

是。 你知道吗,这可能意味着这是在程序文件夹中。

过去10年的Windows规格对于普通用户来说是“只读”吗?

哎哟。

它们是用于存储数据的文件夹。 有一个SpecialFolders枚举来获取每个这样的文件夹的有效路径。

如何在其他计算机上允许写入权限? 我可以通过编程方式完成吗?

在SQL Server上,这是通过允许另一台计算机访问服务器而不是数据文件来完成的。 即你连接到另一台机器上的SQL Server,它正在加载数据库。

我已经读过我可以把DB放到AppRoaming文件夹中,但这不是我的变种。

首先,除非你真的计划漫游,否则这将是愚蠢的 – SQL shold进入本地文件夹,从不漫游。

其次,“不是我的变种”就像“嘿,我驾驶汽车违反规则,我有什么不能获得超速罚单”。 并且“遵守法律不是我的变种”。 你的变体是WIndows不关心的东西。 了解如何根据Windows指南安装软件,在非常明确的情况下,不应更改数据。