【发布时间】:2013-08-21 07:47:53
【问题描述】:
我想这是每个客户端服务器初学者都在寻找的基本问题:我开发了一个C#.NETClient-Server 软件。
应用程序的基本概述
应用程序包含一个内置数据库,因此如果服务器不可用,用户可以使用其本地系统可用的数据库。如果数据库在服务器上可用,则将使用服务器数据库。通过单击按钮,两个数据库synchronize 相互连接。所以我有两个连接字符串,一个用于本地系统,另一个用于服务器。它们都是动态创建的。
对于:客户端设置 -> 现在我正在使用 Click One 应用程序
- 我的客户端系统使用一个本地数据库,我用它来安装我的应用程序。
问题 1:
我有一个基于 SQL Server Express 的数据库部署。我创建了一个带有 SQL Server 2008 等先决条件的 clickone 应用程序。当我安装 clickone 时,我的应用程序安装正确,没有任何错误,但是在启动应用程序时,它给了我错误,我的应用程序无法在 C:\Users\Xnor\AppData\Local\Apps\2.0\Data\N24R9574.9H1\V0Q1MX0C.0X9\.... 找到数据库
我浏览了 stackoverflow,发现将我的 .mdf 复制到这个位置可以解决我的问题。但是为什么会这样。为什么不复制自己?
有没有办法将数据库永久附加到我的应用程序,这样我就可以避免这种手动工作?
到处都是将.mdf 文件复制到该位置的指示,仅此而已。那么有什么方法可以工作,也许如果有可能并且暗示.mdf 将附加在资源中并可以从那里使用。寻求专家建议,这是完成它的最佳方式。
对于服务器:
我用来安装Microsoft SQL Server Management Studio Express,然后在那里为我的服务器创建数据库,然后 IT 用来与我的应用程序一起工作。
问题 2
我怎样才能减少这些步骤。正如告诉非 IT 人员并教他们一直在服务器上安装 Microsoft SQL Server Management Studio Express,然后在其上创建数据库,然后将其连接字符串提供给应用程序以使其工作会带来很多问题。
所以我的基本要求只是在安装时为用户提供流畅的体验。因为做安装的家伙不是一个高大的怪胎。他们可以做NextNextNext,但他们不喜欢做这么多的配置。有没有专业的方法可以做到这一点。我想这是客户端-服务器软件最重要的事情,我从来没有见过这样的软件要求你做这么多的配置。
我不太愿意使用 Click-one Deployment,因为它看起来很不专业,而且我觉得它的功能非常有限。因此,请建议一些其他可以满足此要求的替代方案。
我也想知道这是一件非常重要的事情,而且我在 google 和 youtube 上都没有现成的教程,我无助于找到如何使这件事自动化的正确方向,或者可能是一种减少步骤的方法。
我准备部署两种设置:一种用于客户端,一种用于服务器
如果需要任何其他信息,请告诉我。期待大力支持。问候。
【问题讨论】:
-
服务器端到底要安装什么?只有每个客户端连接到的数据库服务器?或者您的程序的一部分要部署为服务或类似的东西?
标签: .net sql sql-server visual-studio-2010 client-server