WoF*_*gel 17 .net c# sql sql-server-ce
我使用SQL Server Compact 3.5 开发了一个应用程序(100%本地,无法访问服务器),它在我的计算机上运行良好.但是,当我在另一台计算机上部署它时,它显示以下错误:
Access to the database file is not allowed. [ File name = data\BDApepucCE.sdf ]
Run Code Online (Sandbox Code Playgroud)
我部署在Windows XP计算机上.每当我尝试在数据库上写入时它都会显示此错误,但是,当我阅读时它会起作用.
我在Windows 7计算机上进行了测试,它工作率为100%,除非通过家庭组(即本地网络)访问该文件,但在读取/写入时它都失败了.
平台:Windows 7,Visual Studio 2010和.NET 4 Client Profile
小智 20
确保|DataDirectory|在连接字符串中使用.这是一个例子
connectionString="Data Source=|DataDirectory|MyDB.sdf"
Run Code Online (Sandbox Code Playgroud)
我有完全相同的问题你和我设法通过添加| DataDirectory |来解决它 到我的连接字符串.
祝好运.
小智 13
这对我有用:http://solutionevangelist.com/community/discussion/20/access-to-the-database-file-is-not-allowed.-system.data.sqlserverce.sqlceexception/p1
它通常是一个权限问题.我通过GUI或使用,为App_Data中的.sdf文件赋予"Everyone"完全权限
Run Code Online (Sandbox Code Playgroud)icacls database.sdf /grant Everyone:F
我也有同样的问题.我的解决方案是在我部署它并且sdf文件签入(即只读)时在TFS/SourceControl中,这导致了与上面完全相同的错误.当我检出sdf文件并再次部署时,一切都很好.我想如果其他TFS用户遇到同样的问题我会分享.
| 归档时间: |
|
| 查看次数: |
22600 次 |
| 最近记录: |