2009-03-27 10 views
2

私は、既存のクライアントからASP.NET 2.0のWebポータルにいくつかの機能を拡張しているプロジェクトを持っています。クライアントはWindowsフォームベース(.NET 2.0)です。生成されたsettings.Designer.csファイルを含む、Project> Properties> Settings.settingsシステムに保持されるいくつかの設定があります。このファイルは、各設定に対して素晴らしい自動ラッパーを提供します。ASP.NET 2.0の設定(構成)を管理する最適な方法は何ですか?

ウェブサイトを設定しようとしていますが、私はこの機能の明白な不足によって挫折しました。私はweb.configを持っており、セクションを持つことができます。これは、例えば、文字列でコード経由でのアクセスを意味します

WebConfigurationManager.AppSettings["mySetting"]; 

私も設定が少し抽象化を与える、別のファイルにこの方法を参照してください持っている、とソース管理に簡単にチェックインすることができます

<appSettings configSource="web.settings.config"/> 

最終的には、これにはクライアントプロジェクト設定システムの機能の一部が欠けています。

可能なすべての場合に、特に私は非常に多く、これらの機能たい:

  • 自動生成アクセサクラス(便宜上、インテリセンス...) 強く
  • はインテリセンスを提供型付き
    • 便利
    • 設定名の誤字/誤字に対してコードがコンパイルされない
  • 簡単なインターフェース
    • すべてのオプションが
    • を表現する前に、素敵なグリッドを提供settings.Settings
    • は、特定のオプション
    • のドロップダウンの選択肢が
    • XMLを編集する必要はありません見せた缶ファットフィンガーアングルブラケット

これらをラップするクラスを作成することは可能ですが、自動的に設定と同期していないため、変更に合わせて手動で編集する必要があります。それはしかし、上記のいくつかを提供するだろう。

クライアントのようにプロジェクト設定でパリティを取得できますか?

ASP.NET 2.0 Webサイトの設定を管理する最適な方法は何ですか?

答えて

1

あなたがウェブサイト、Webアプリケーションではなく使用する必要があり、あなたはデフォルトでWindowsアプリケーション

+0

私はそれが私たちのためのオプションであるとは確信していません、私はウェブサイトで運がいいですか? –

+0

あなたは完全に運が良かったわけではありませんが、ウェブサイトでは設定ファイルから設定を "手動で"解析する必要があります。 – Albert

0

と同じ方法で設定にアクセスすることができます、あなたのweb.configファイル内のappSettingsセクションを使用すると、あなたを管理する最も簡単な方法ですWebアプリケーションのアプリケーション設定。必要に応じて、アプリケーション設定内で値をキャストできます。しかし、あなたはこのケースでは強力なタイピングを失います。

強い入力を保持する必要がある場合は、プロジェクト設定(WinFormsアプリケーションに似ています)に移動して値を設定します。

<applicationSettings> 
    <EAF.My.MySettings> 
     <setting name="EAF_AS400EmployeeServices_EmployeeServices" serializeAs="String">           
     <value>http://countynetappsdev/AS400DataService/EmployeeServices.asmx</value> 
    </setting> 
</applicationSettings> 
:(私のアプリケーションのいずれかからスワイプ)web.configファイルの一番下にダウンスニペットあなたはsettings.settingsファイルがMyProjectsでフォルダ内に存在することがわかりますが、あなたは以下のコードをも見つけることができます

このセクションのserializeAsプロパティに注目してください。このセクションでは、VB.NETを使用してMySettingsライブラリを使用して設定にアクセスできます。しかし、C#を使用しているので、より多くの作業が必要ですが、簡単なコード解法はhereです。

0

私はweb.configをラップするクラスを作成して、強く型付けされたintellisenseフレンドリーな設定へのアクセスを提供します。

また、設定は、実装時にサポート担当者によってXMLで変更される可能性が最も高いため、VSのグリッドは違いはありません。許可されているが、自動生成されていませんが、コピー/貼り付けはあなたの友人です:)

関連する問題