DevForce初始验证

时间:2017-02-17 15:41:13

标签: c# devforce

我们刚刚开始使用DevForce开展项目,我们希望做的一件事是突出显示用户在创建新记录时需要哪些字段。

我们遇到的问题是,DevForce似乎将可空字段初始化为其类型的默认字段,因此,UI不会在必填字段上显示突出显示等,除非我们专门去掉属性我们希望向用户强调。

        private void InitializeUser()
    {
        _creatingUser = Manager.Users.FirstOrDefault(u => u.UserName ==
                                                 Manager.AuthenticationContext.Principal.Identity
                                                     .Name);

        var zone = DateTimeZoneProviders.Tzdb.GetSystemDefault();
        Instant systemTime = SystemClock.Instance.Now;

        // HACK: nulling out strings to make the validation fire correctly
        // need to find a beter solution for this
        UserToAdd = new User()
        {
            CreatedBy = _creatingUser,
            CreatedDate = systemTime.InUtc().ToDateTimeUtc(),
            CreatedTz = zone.Id,
            ModifiedBy = _creatingUser,
            ModifiedDate = systemTime.InUtc().ToDateTimeUtc(),
            ModifiedTz = zone.Id,
            UserName = null,
            Email = null,
            FirstName = null,
            LastName = null,
            Active = true
        };
    }

我们没有看到禁用此初始化的选项,我们想知道Stackoverflowers是否遇到过这个问题并找到了更好的解决方案。

1 个答案:

答案 0 :(得分:0)

设置模型范围默认值的最简单方法是使用DefaultValueFunction,您可以在DevForce Resource Center上阅读更多相关信息。