-2
私はweb.config内にActive Directoryグループ名を保持するappSetting値を持っています。すなわち"Mydomain \ MyAdmin_Group"コード内の文字列とConfigurationManager.AppSettingsの文字列がIsInRoleで異なる動作をします
私のコードは、指定されたグループ内にユーザーがいるかどうかを確認しますが、falseを返します。
User.IsInRole(ConfigurationManager.AppSettings["AdminGroup"].ToString())
次のコードを使用するとtrueを返します。私のWeb.Configで
User.IsInRole("MyDomain\\MyAdmin_Group")
私のAppSettingは次のとおりです。
<add key="AdminGroup" value="MyDomain\\MyAdmin_Group"/>
なぜ「ハードコード化された」コール作業が、のConfigurationManagerを使用したバージョンは動作しませんか?
ランタイムテストを行い、 'ConfigurationManager.AppSettings [" AdminGroup "]。ToString()==" MyDomain \\ MyAdmin_Group "'を確認してください。 –
ブレークポイントとデバッガを使ったクイックレビューは、このような問題を見つけるのに最適です。コードが予期せぬことを行うポイントまで右に移動し、関連するすべての変数を調べます。それらを既知の良い値と比較してください。コンパイラは壊れていない、常に理由がある。 – asawyer