【问题标题】:Is there a way to store and access a SQL CE (.sdf) database in isolated storage?有没有办法在隔离存储中存储和访问 SQL CE (.sdf) 数据库?
【发布时间】:2010-05-23 11:10:50
【问题描述】:

我有一个 .Net 应用程序,它必须将所有本地数据存储在隔离存储中。我想开始使用 SQL CE 来存储这些数据。我找不到任何关于如何(或即使)这是可能的文档。

  1. 是否可以使用隔离存储来存储 SQL CE 数据库?

  2. 如果是这样,连接字符串会是什么样子(或者您需要通过其他方式打开数据库)?

【问题讨论】:

标签: .net sql-server-ce isolatedstorage


【解决方案1】:

SqlCe 似乎不支持隔离存储。请参阅这些问题。

https://stackoverflow.com/questions/108399/what-embedded-database-with-isolated-storage... What are the advantages of VistaDB

VistaDB 看起来是一个更好的选择。或者,您可以设置某种 hack,使用 IS API 将 SDF (SQlCe) 文件从隔离存储复制到普通文件系统中的某个位置,您可以在其中正常交互,然后复制 SDF 文件回到IS。不过,这几乎违背了隔离存储的目的,所以我不推荐它。

【讨论】:

    【解决方案2】:

    SQL Server CE 不直接支持这个;你必须使用不同的产品。除了VistaDB,如果您不需要关系数据库(它是一个对象数据库并且有一个独立的存储包装器),您还可以使用db4o

    从技术上讲,您可以使用反射来获取独立存储文件的完整路径,并在连接字符串中使用结果,尽管我猜如果您需要使用独立存储,那么您的应用程序不会在完全信任。即使是这样,这仍然是一件危险的事情。不过,如果你真的很绝望,你可以看看this thread,它有一个示例,其中涉及创建一个流并反映包含文件名的流的私有字段之一。

    【讨论】:

      猜你喜欢
      • 2020-02-28
      • 1970-01-01
      • 2014-02-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-08
      相关资源
      最近更新 更多