0

最初の実行時にデータベースへの接続の詳細を要求するデスクトップアプリケーションがあり、次にユーザーが次回アプリを起動したときにそれらを再利用できるように、それらを将来の使用のために (暗号化された文字列として) 保持したい. 現在、クライアントは、これまでまったく触れたことのない citrix 環境を実行しています。この暗号化されたデータベース文字列が、ユーザーがどこからログインしても利用できるように保存されていることを確認したいと思います。私が言っているのは、アプリケーションがローミング プロファイルでこの設定を認識している必要があるということですが、これは以前はあまり心配する必要がなかったものなので、必要な落とし穴があるかどうかを確認しているだけです。知っておいてください。

通常、私は .Net で My.Settings 名前空間を使用するだけですが、この環境ではそれをカットするつもりですか?

ローミング ユーザーが新しい場所からログインするときに設定を再入力するように求められないように、ユーザー設定を保存するための「ベスト プラクティス」を知っている人に感謝します。

このように DB 接続を設定する理由は、ユーザーが切り替えることができる Test データベースと Live データベースがあるためです (同一のデータベース、異なるサーバー)。

ライブ接続文字列とテスト接続文字列を app.config に保存し、管理者がインストール後にそれらを手動で更新できるようにし、UI でテストからライブに切り替えるスイッチを提供する方がよいでしょうか?

私は通常、すべてが web.config にうまく収まる asp.net サイトで作業しているため、これは私の快適ゾーンから少し外れています。本にはかなりの数のオプションがありますが、どのテクニックが最も効果的かについて誰かアドバイスがあれば教えてください。

VB.Net 3.5 (Visual Studio 2010) を使用しています。これは、実際の DB アクセスが行われるソリューションにいくつかの .dll ライブラリを含む Windows フォーム プロジェクトです。

4

2 に答える 2

1

すでに書いたように、保存した設定がプロファイルのローミング部分にあることを確認する必要があります。これは、レジストリ ハイブ HKEY_CURRENT_USER、または %USERPROFILE%\AppData\Roaming に解決されるフォルダー %APPDATA% のいずれかです (Vista 以降では、古いオペレーティング システムのロケール固有のローミング AppData フォルダーにも解決されます)。

.NET では、ユーザー固有の設定をユーザー プロファイルのローミング部分とローカル部分の両方に格納できます。設定をローミングするには、"Roaming" プロパティを true に設定する必要があります。説明と、設定が実際に保存されるパスについては、この記事を参照してください。

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

于 2010-11-10T16:44:22.287 に答える
0

接続文字列が事前にわかっている場合は、それらを app.config に保存し、アプリケーションの開始時に、たとえば ComboBox を介して接続を選択するようにユーザーに依頼できます。

事前に接続文字列がわからない場合は、次のオプションを考えることができます
。1- 接続文字列がわかっているデータベースまたはローカル データベースの SqlServerCE .sdf ファイルを使用して、これらの情報を保存します。
2- C# の Properties.Settings.Default.NameofSetting からアクセスできる .Net のユーザー設定を使用します。

于 2010-11-10T21:22:37.227 に答える