【问题标题】:Unique Key Constraint Validation MVC 4 (Fluent API)唯一键约束验证 MVC 4 (Fluent API)
【发布时间】:2015-11-13 08:01:33
【问题描述】:

我的项目分为Controller、Models、Services、Parameters和Views。
我不使用EF。 我尝试使用此代码验证唯一密钥约束,但用于 EF。

public static ValidationResult IsUserNameUnique(object username, ValidationContext context)
{
            ADMINEntities x = new ADMINEntities();
            var users = from u in x.Users
                        select u;
            foreach (var item in users)
            {
                if (item.Username == username.ToString())
                {
                    return new ValidationResult("Username is already choosen, please choose another one.");

                }
            }
            return ValidationResult.Success;
}

如何更改代码以适应流利的?
没有 edmx。
没有上下文。

【问题讨论】:

  • 您能否详细说明您想要实现的目标是什么?目前还不是很清楚问题是什么以及在哪里。
  • 正是……关于它。我希望他可以浏览用户列表并检查用户是否存在,如果有的话不要让创建订单。这就是验证

标签: c# asp.net-mvc fluent


【解决方案1】:

我假设您想删除foreach 循环并拥有更简洁的代码。可以使用 FirstOrDefault extension 编写等效但更短的查询:

var x = new ADMINEntities();
var usersExists = x.Users.FirstOrDefault(u => u.Username == username.ToString());
return usersExists != null
            ? new ValidationResult("Username is already choosen, please choose another one.")
            : ValidationResult.Success;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-24
    • 1970-01-01
    • 1970-01-01
    • 2013-03-02
    • 1970-01-01
    • 2013-05-21
    • 2011-05-28
    • 2018-11-23
    相关资源
    最近更新 更多