混淆了.NET中偶尔连接的应用程序的本地数据存储

时间:2011-06-03 17:59:20

标签: asp.net wpf wcf visual-studio-2010

我是否可以将SQL Server Express数据库用作使用Visual Studio编写的偶尔连接的应用程序(OCA)的本地数据库?这需要在客户端计算机上安装SQL Server吗?看起来.NET中的OCAs的默认架构是使用SQL Server Compact。但是,SQL Server Compact不允许使用存储过程。我在我的应用程序中使用存储过程进行所有数据访问,因此,我对创建偶尔连接的客户端以扩展功能的最佳方法感到困惑。

我目前有一个连接到Web服务(WCF)的ASP.NET Web应用程序。 Web服务连接到DB并调用存储过程以获取数据并提交对数据的更改。现在,我正在尝试编写一个桌面应用程序,可以在连接可用时连接到Web服务,并在连接不可用时使用MS Sync Framework在本地工作。我不太明白如何为这一点做架构。

1 个答案:

答案 0 :(得分:1)

是的,本地数据缓存与SQL CE 3.5一起使用,您无法在缓存上使用存储过程。将本地数据缓存项添加到项目后,它会自动准备所有必需的MS Sync Framework代码,以便与主数据源进行数据同步+所有必需的本地数据库SQL脚本,它还可以为您创建类型化数据集或实体数据模型从您的应用程序访问缓存。

项不适用于SQL Server Express - 它不提供任何其他数据提供程序,而是SQL Compact 3.5。无论如何,如果你想使用SQL Server Express,你必须在客户端机器上安装它,或者使用另一台机器作为数据库服务器,这打破了本地数据缓存的全部目的。

顺便说一下。我认为本地数据缓存仅适用于作为主数据源的数据库,因此如果您希望将WCF服务作为数据源并且您必须自己编写存储和同步,则无法使用它。