1

ADでユーザーを作成するためのプロジェクトをC#で開発しています。

ユーザーを作成し、このユーザーの「mobilenumber」などの属性を作成したいと思います。

これを作成すると、以下のエラーが発生します。

ここに私のコード。

      if (userDetails.GetUnderlyingObjectType() == typeof(DirectoryEntry))
        {
            dEntry = (DirectoryEntry)userDetails.GetUnderlyingObject();
            if (User.UsrPassword != null && User.UsrPassword.Trim() != "")
            {
                if (dEntry.Properties.Contains("mobilenumber"))
                {
                    Console.WriteLine("mobilenumberAttribute:Already created");
                    dEntry.Properties["mobilenumber"][0] = User.UsrPassword;
                    dEntry.CommitChanges();
                }
                else
                {
                    Console.WriteLine("mobilenumber Attribute: Adding");

                    dEntry.Properties["mobilenumber"].Add(User.UsrPassword);
                    dEntry.CommitChanges();
                }
                userDetails.Save();
                result = true;
            }
        }

The requested operation did not satisfy one or more constraints associated with the class of the object. (Exception from HRESULT: 0x80072014)

どうすればこれを解決できますか?

4

1 に答える 1

2

属性を作成しますか?スキーマを拡張するのが好きですか?オブジェクトに追加するだけではそれはできません。ご覧のとおり、「 mobilenumber」などの属性はありません。たぶんあなたはotherMobile (電話-モバイル-その他)またはmobile (電話-モバイル-プライマリ)が欲しいですか?

あなたは何をしようとしているのですか?パスワードのコピーをユーザーオブジェクトに保持する理由。ユーザーが変更した場合、コピーは更新されません。どういうわけかユーザーに通知するためにそれが必要な場合は、上司に情報を提供するなど、別のことをしてください...考えてみてください。

于 2012-12-06T12:05:02.160 に答える