大整数属性类型

Active Directory 域服务架构属性(如 lastLogon)使用 LargeInteger 语法类型。有关 lastLogon 属性或 LargeInteger 语法类型的详细信息,请参阅 MSDN Library(网址为 https://go.microsoft.com/fwlink/?LinkID=27252)中的 lastLogon 或 LargeInteger。

如果此类型的属性是通过 Properties 属性获取的,则将此数据类型表示为可强制转换为 IADsLargeInteger 的 COM 对象。有关 IADsLargeInteger 类型的详细信息,请参阅 MSDN Library(网址为 https://go.microsoft.com/fwlink/?LinkID=27252)中的 IADsLargeInteger。

如果此类型的属性是从 ResultPropertyValueCollection 获取的,则将此数据类型表示为 Int64 结构。

下面的示例说明如何从 IADsLargeInteger 类型转换为 DateTime 类型。

public static DateTime GetDateTimeFromLargeInteger(IADsLargeInteger largeIntValue)
{
    //
    // Convert large integer to int64 value
    //
    long int64Value = (long)((uint)largeIntValue.LowPart +
             (((long)largeIntValue.HighPart) << 32 ));  

    //
    // Return the DateTime in utc
    //
    return DateTime.FromFileTimeUtc(int64Value);
}

下面的示例说明如何从 DateTime 格式转换为 IADsLargeInteger。

public static IADsLargeInteger GetLargeIntegerFromDateTime(DateTime dateTimeValue)
{
    //
    // Convert DateTime value to utc file time
    //
    Int64 int64Value = dateTimeValue.ToFileTimeUtc();

    //
    // convert to large integer
    //
    IADsLargeInteger largeIntValue = 
         IADsLargeInteger) new LargeInteger();
    largeIntValue.HighPart = (int) (int64Value >> 32);
    largeIntValue.LowPart = (int) (int64Value & 0xFFFFFFFF);

    return largeIntValue;
}

另请参见

参考

System.DirectoryServices
DirectoryEntry
ResultPropertyValueCollection

概念

属性类型

Send comments about this topic to Microsoft.

版权所有 (C) 2007 Microsoft Corporation。保留所有权利。