1

ユーザー定義のコントロールを使用する DNN モジュールを実装しました (このユーザー定義のコントロールは、GoogleAnalytics による追跡を実装しています)。

コントロールは、Google アナリティクス アカウントの構成設定を取得するために、構成ファイルにアクセスする必要があります。たとえば、アカウント コード (UA-dddddd-dd) などです。

私の質問: モジュールを DotNetNuke にインストールしているので、構成ファイルを配置する適切な場所はどこですか、またはデフォルトでどの構成ファイルにアクセスしますか?

構成ファイルにアクセスしようとするコントロール内のコードを以下に示します。

string path = Assembly.GetExecutingAssembly().CodeBase;
FrameworkConfig.instance = new FrameworkConfig(ConfigurationManager.OpenMappedMachineConfiguration(new ConfigurationFileMap(path + ".config")));

注:オブジェクトFrameworkConfigのラッパー クラスです。System.Configuration

要するに、 Assembly.GetExecutingAssembly().CodeBaseDNN モジュールを介して呼び出されたときに何が返されるかを知る必要がありますか? 他の選択肢は?

4

2 に答える 2

4

DNN サイトの web.config の appsettings セクションにキーを追加すると、次を使用してキーを取得できます。

DotNetNuke.Common.Utilities.Config.GetSetting("settingname");

Settingsただし、モジュール内にコントロールを作成し、そこに情報を格納する方が適切であり、この場合は理にかなっています。

DotNetNuke.Entities.Modules.ModuleSettingsBaseこれを行うには、モジュールの基本設定ディクショナリから設定を継承して保存する ascx コントロールを作成します。

他のモジュール ビュー コントロールは、クラスの一部である同様のDictionaryオブジェクトを介して設定にアクセスできます。SettingsModuleUserControlBase

モジュール設定の使用方法の例については、この DNN7 チュートリアル ビデオと記事をご覧ください。すべてのコードを含むサンプル プロジェクトは、この記事の関連ファイル セクションにあります。

于 2013-09-04T15:50:46.487 に答える