Jud*_*ngo 6 sqlite entity-framework
---编辑---我可以提供任何其他信息来帮助解决这个问题吗?
我正在尝试在.NET WCF Web服务中启动并运行Sqlite和Entity Framework.
当我尝试将任何内容保存到数据库时,我收到错误"尝试编写只读数据库".这是完整的错误信息:
System.Data.EntityException:在提供程序连接上启动事务时发生错误.有关详细信息,请参阅内部异常
---> System.Data.SQLite.SQLiteException:尝试编写只读数据库
尝试 在[snip] ..........................
在System.Data.SQLite.SQLite3.Reset(SQLiteStatement stmt)
上编写只读数据库. ..............................>在System.Data的System.Data.EntityClient.EntityConnection.BeginDbTransaction(IsolationLevel isolationLevel)处.位于System.Data.Objects.Object上的System.Data.EntityClient.EntityConnection.BeginTransaction()处的System.Data.Objects.ObjectContext.SaveChanges(布局为acceptChangesDuringSave)的Common.DbConnection.BeginTransaction()位于System.Data.Objects.ObjectContext.SaveChanges()处...
这是我在Web.config中的EF配置(带有换行符以便于阅读):
<connectionStrings>
<add
name="FooEntities"
connectionString="metadata=res://*/FooDataModel.csdl|
res://*/FooDataModel.ssdl|
res://*/FooDataModel.msl;
provider=System.Data.SQLite;
provider connection string='data source=C:\domains\myfoosite.com\wwwroot\FooService\Foo.sqlite'"
providerName="System.Data.EntityClient" />
<connectionStrings>
Run Code Online (Sandbox Code Playgroud)
为什么我收到此错误?为什么数据库是只读的?
我试过的一些事情:
确保Web服务可以写入目录和文件.(我尝试将纯文本文件写入与测试相同的目录.)
我在连接字符串中添加了'read only = False'.
事实证明问题出在 IIS 安全设置上。我必须打开脚本写入访问权限,然后它神奇地开始工作。
归档时间: |
|
查看次数: |
3423 次 |
最近记录: |