0

我有一个桌面应用程序,它在第一次执行时提示输入数据库的连接详细信息,然后我想保留它们以供将来使用(作为加密字符串),以便下次用户启动应用程序时它们可以重新使用. 现在客户端运行一个我以前没有真正接触过的 citrix 环境,我想确保这个加密的数据库字符串以这样一种方式保存,即无论用户从哪里登录,它都可供用户使用 - 我认为我要说的是应用程序需要知道他们的漫游配置文件中的这个设置,但这是我之前真正不必担心的事情,所以我只是检查是否有任何我需要的陷阱意识到。

通常我只是在 .Net 中使用 My.Settings 命名空间,但在这种环境中会不会减少它?

我会很感激任何知道“最佳实践”的人来保存用户设置,这样漫游用户在从新位置登录时不会被要求再次输入他们的设置。

以这种方式设置DB连接的原因是有一个Test和一个Live数据库,用户可以在它们之间切换(相同的数据库,不同的服务器)。

将实时和测试连接字符串存储在 app.config 中并允许管理员在安装后手动更新它们,然后提供从测试切换到 UI 中的切换会更好吗?

我通常在 asp.net 网站上工作,所有东西都在 web.config 中愉快地生活,所以这有点超出了我的舒适区。我可以在书中看到很多选项,但我想知道是否有人对哪种技术最适合他们有任何建议?

我正在使用 VB.Net 3.5 (Visual Studio 2010)。这是一个 Windows 窗体项目,在实际数据库访问发生的解决方案中包含少量 .dll 库。

4

2 回答 2

1

正如您已经写过的,您需要确保您保存的设置最终出现在配置文件的漫游部分中。这可以是注册表配置单元 HKEY_CURRENT_USER 或解析为 %USERPROFILE%\AppData\Roaming 的文件夹 %APPDATA%(在 Vista 和更新版本上,但在旧操作系统上也可以是特定于区域设置的漫游 AppData 文件夹)。

在 .NET 中,用户特定的设置可以存储在用户配置文件的漫游和本地部分。为了使设置漫游,需要将“漫游”属性设置为 true。有关说明以及实际保存设置的路径,请参见本文:

http://www.codeproject.com/KB/vb/appsettings2005.aspx

于 2010-11-10T16:44:22.287 回答
0

如果您事先知道连接字符串,则可以将它们存储在 app.config 中,并在应用程序开始时要求用户通过 ComboBox 选择连接。

如果您事先不知道连接字符串,我可以考虑以下选项:
1- 使用您知道其连接字符串的数据库或本地数据库 SqlServerCE .sdf 文件来存储这些信息。
2- 使用 .Net 中的用户设置,可通过 C# 中的 Properties.Settings.Default.NameofSetting 访问。

于 2010-11-10T21:22:37.227 回答