我正在为Microsoft Identity Manager(FIM / MIM)编写规则扩展并遇到问题。 我想要的是: 我有一个属性"经理"这是对用户管理器的引用。我需要查找此属性并使用管理员帐户名填充MS AD中的另一个属性。 我有一个必须工作的代码,但我收到错误
System.InvalidOperationException:无法访问属性管理器。 MV对象上无法访问的引用值。 在Microsoft.MetadirectoryServices.Impl.AttributeImpl.get_Value() 在C:...... HRExt.cs:第213行的Mms_ManagementAgent_HRExt.MAExtensionObject.Microsoft.MetadirectoryServices.IMASynchronization.MapAttributesForImport(String FlowRuleName,CSEntry csentry,MVEntry mventry)
此时
mvMGRemployeeID = mventry["ManagerID"].Value.ToString().ToLower();
代码如下:
string mvMGRemployeeID; //temp string that holds the supervisor code
MVEntry[] mgrSearch; //Collection of MV Etriers used to perform the search forMV object based on the manager employeeID
if (mventry["ManagerID"].IsPresent)
{
mvMGRemployeeID = mventry["MAnagerID"].Value.ToString().ToLower();
mgrSearch= Utils.FindMVEntries("employeeID", mvMGRemployeeID, 1); //Is there an object with employeeID = ManagerID
if (mgrDNSearch.Length == 1)//if we get only one return (which we should)
{
if (mgrDNSearch[0]["accountName"].IsPresent) //get the DN of the returned object
{
csentry["manager"].Value = mgrDNSearch[0]["accountName"].Value.ToString();
}
}
}
break;