Мы хотим добавить пару полей даты в нашу схему Active Directory в 2008 R2, чтобы облегчить небольшую автоматизацию. В частности, добавление в поле hireDate
, которое автоматически заполняется из импорта.Использование обобщенного времени в настраиваемом поле
Это все работает как ожидается в нашей тестовой среде, однако мне любопытно, есть ли способ улучшить отображение этого настраиваемого атрибута, когда дело доходит до дат.
hireDate
поле устанавливается как Синтаксис из Обобщенные времени, чтобы соответствовать родные поля, такие как whenCreated
.
Однако при размещении даты, чтобы hireDate
, форматирует это сильно отличается от whenCreated
для отображения
> $user = Get-ADUser MyUser -Properties whenCreated,hireDate
> $user
-- snip --
hireDate : {19870301070000.0Z}
whenCreated : 8/28/2014 12:24:42 PM
Если я проверить MemberType этих свойств, они тоже разные, даже если они как Обобщенные Time
$user | Get-Member -MemberType Properties
TypeName: Microsoft.ActiveDirectory.Management.ADUser
Name MemberType Definition
---- ---------- ----------
hireDate Property Microsoft.ActiveDirectory.Management.ADPropertyValueCollection hireDate {get;set;}
whenCreated Property System.DateTime whenCreated {get;}
есть ли правильный способ создать пользовательский атрибут как DateTime
или ограничены ли мы способ создания этих атрибутов?
Я надеялся избежать всех преобразований. Несмотря на то, что атрибут является однозначным, он по-прежнему отображается как коллекция. В этот момент я мог бы также использовать существующий атрибут расширения строки и преобразовать его в дату-время, чтобы он был, по крайней мере, доступен для чтения сразу – Kirk