2012-04-22 14 views
0

Windowsサービスをテストするために必要なデスクトップアプリケーションがあります。設定を取得する

アプリケーションは、ビジネスを処理するWindowsサービスクラスを呼び出します。まず、app.configからデータをロードする必要があります。

appの設定はseviceプロジェクト内にあり、カスタムセクション[ABCConfigurationSection]に自分のconfugrationを保存します。 のように...

<ABCConfigurationSection> 
    <ConnectSettings> 
     <clear /> 
     <add key="HostIp" value="10.0.X.X"/> 
    </ConnectSettings> 
</ABCConfigurationSection> 

メイン設定]セクションのような..です

<configuration> 
    <configSections> 
    <section name="ABCConfigurationSection" type="ABCConfiguration, App.Core" /> 
    </configSections> 
</configuration> 

私がnullだセクション名として、私は "ABCConfigurationSection" を渡し、構成セクションをretrive! アプリ設定の構造に何かがないかどうかについての考え方

+0

コードを表示することはできますか? –

+0

セクション= System.Configuration.ConfigurationManager.GetSection( "ABCConfigurationSection")as App.Core.ABCConfiguration; – AshOoO

答えて

0

「ABCConfigurationSection」セクションのセクションでは、セクションを処理するタイプが「ABCConfiguration」であると宣言します。

これは、コードでは、セクションを読み取るConfigurationSectionから派生したABCConfigurationという名前のクラスを定義する必要があることを意味します。

この件に関する詳細は数多くあります。これはMSDNへのリンクです。完全な例が与えられています

+0

私はそのクラスを持っており、私は別のアプリケーション(Webアプリケーション)と一緒にエラーも問題なく使用します。 win-serviceでwithと一緒に使うときの問題 – AshOoO

+0

設定ファイルのファイルプロパティを確認できますか?これは同様の問題です:[TypeInitializationException](http://stackoverflow.com/questions/3452077/typeinitializationexception-when-starting-windows-service-because-config-section) – Steve

+0

私のファイルプロパティisn '紹介された投稿に何が好きですか? 読み取り専用ではなく、ブロック解除ボタンがなくても隠されていません – AshOoO

関連する問題