- PR -

ActiveDirectory 取得エントリの最大数(SizeLimit)について

1
投稿者投稿内容
hiro
会議室デビュー日: 2005/03/28
投稿数: 3
投稿日時: 2005-03-28 21:24
はじめまして。

現在、C#.NETでActiveDirectoryのユーザーをDBに格納するプログラムを作成中です。
ActiveDirectoryに2000アカウント程ユーザーがエントリーされているのですが、DBのTABLEには1000件しか取り込めません。
ソース上では、下記のようにインスタンスを生成後、最大取得件数を10000件に設定していますが、有効ではないようです。
何か有効な回避策があれば教えてください。
以上、宜しくお願いいたします。

//インスタンスを生成
DirectorySearcher drSearch = new DirectorySearcher(_deEntry);

//最大取得件数を10000件に設定
drSearch.SizeLimit = 10000;

// アカウントフィルターを設定
drSearch.Filter = "(objectClass=user)";

// Common Name(cn)プロパティを同時に取得するように設定
drSearch.PropertiesToLoad.Add("cn");

// 検索する
SearchResultCollection scn = drSearch.FindAll();

//ActiveDirectry全ユーザーのプロパティー取得とテーブルへの挿入
foreach( SearchResult sResult in scn)
{
//カプセル化されたActiveDirectory階層ノードのインスタンス生成
DirectoryEntry de = sResult.GetDirectoryEntry();



}
hiro
会議室デビュー日: 2005/03/28
投稿数: 3
投稿日時: 2005-03-29 11:25
こんにちは。
解決しましたので自己レスさせていただきます。
前回掲載したソースに以下の1行を追加することで解決しました。

//Active Directoryのページサイズを1000に設定
drSearch.PageSize = 1000;

以下のページが役に立ちました。
http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/aug04/hey0824.mspx

お騒がせいたしました。
1

スキルアップ/キャリアアップ(JOB@IT)