C# LinqToLDAP字符串和日期时间

C# LinqToLDAP字符串和日期时间,c#,linq,razor,ldap,C#,Linq,Razor,Ldap,我的模型: ... [DisplayName("Birthday")] public DateTime extensionAttribute1 { get; set; } 和控制器: var config = new LdapConfiguration(); config.ConfigureFactory("DOMAIN"); using (var context = new DirectoryContext(config)) {

我的模型:

...
[DisplayName("Birthday")]
public DateTime extensionAttribute1 { get; set; }
和控制器:

var config = new LdapConfiguration();
        config.ConfigureFactory("DOMAIN");
        using (var context = new DirectoryContext(config))
        {
            var user =
                (from u in
                     context.Query(new ADUser(), "OU=xxx,DC=xxx", "User")
                         .Where(d => d.SAmAccountName == samaccount)

                 select new ADUser()
                 {
                     SAmAccountName = u.SAmAccountName,
                     Department = u.Department,
                     DisplayName = u.DisplayName,
                     HomePhone = u.HomePhone,
                     Mail = u.Mail,
                     Mobile = u.Mobile,
                     PostalCode = u.PostalCode,
                     StreetAddress = u.StreetAddress,
                     TelephoneNumber = u.TelephoneNumber,
                     ThumbnailPhoto = u.ThumbnailPhoto,
                     Title = u.Title,
                     l = u.l,
                     PhysicalDeliveryOfficeName = u.PhysicalDeliveryOfficeName,
                     extensionAttribute1 = u.extensionAttribute1
                 }).FirstOrDefault();

            return user;
        }
给出错误:字符串未被识别为有效的日期时间

如何判断ExtensionAttribute1是日期时间

在AD中,ExtensionAttribute的值为1976-08-31


如果我将模型更改为字符串,它可以正常工作,但是我的editorfor不会显示日期选择器

您需要对格式给出一些提示,以便将它们解析回DateTime对象

在ADUser构造函数中执行此操作

 extensionAttribute1 = DateTime.ParseExact(u.extensionAttribute1, "yyyy-MM-dd",  CultureInfo.InvariantCulture);