2011-09-16 7 views
2

カスタムサイト定義を使用してサイトを作成するSharePoint 2010機能があります。カスタムサイト定義には、サイトの作成時にいくつかのコードがあります。 PowerShellからこの機能を無効にして有効にしようとしていますが、非アクティブ化は正常ですが、Web.configにデータベース接続文字列が必要なため、サイトの作成に失敗します。 app.configファイルを読み込んで[System.AppDomain]::CurrentDomain.SetData("APP_CONFIG_FILE", $config_path)と読み込みます。ここで、$ config_pathは私のapp.configの絶対パスですが、まだ失敗します。[Configuration.ConfigurationManager]::ConnectionStrings['name'](実際の名前に名前が代入されています)から接続文字列を読み込もうとすると、文字列。PowerShellから実行される.NetアセンブリのApp.config

私はSOと他の場所でここでそれを読んだ後、上記のコードを試しました。

他の方法でapp.configファイルをロードする方法や、使用していたもの以外のものがロードされているかどうかを確認する良い方法はありますか?

答えて

0

あなたがasp.netアプリケーション内で実行されているクラスライブラリの場合、そのWebサイトのweb.configから設定が取得されます。 SPについてはわかりませんが、接続文字列をSPのweb.configに追加してみてください。

編集:私は今、私はあなたのクラスライブラリのためのあなたのapp.configを「注入」するために、特定の構文を使用する必要がありますので、あなたはPowerShellのからあなたのアセンブリをロードしている、これよりよく理解し、以前のあなたを取得できませんでした。ここ

はあなたのソリューションである、最も投票の答えを参照してください。Powershell Calling .NET Assembly that uses App.config

+0

設定は、SharePointのためではなく、コードがそれらを読んでいない何らかの理由でweb.configファイルです。私は、接続文字列を取得して何か他のものが間違ってしまうと、データベースにログを記録するすべてのメソッドの中にtry-catchがあるため、問題が接続文字列を取得していないことを約99%確信しています。私が読んだことは、SPに対してPSを使用するとweb.configは読み込まれませんが、これに関するすべては十分に文書化されていることです。 – esrange

+0

あなたの編集リンクは、私が使った行を使った投稿の1つにリンクしています。 – esrange

関連する問題