【问题标题】:Create unique string model.Name创建唯一的字符串 model.Name
【发布时间】:2013-03-08 09:16:31
【问题描述】:

如何使 Name 成为唯一的,因为它不是键,它是一个简单的字符串。 场景是:您创建了一些利润类别:您有 Jackpot、薪水、 退休工资等。在您选择此类别之一并在其他控制器中插入一些内容后。但不需要有两个具有相同名称的类别。我只需要唯一的利润类别。因为现在我可以创建 100 个名称为“Salary”和不同 ID 的类别,因为 Id 的 autoIncrement 主键。

  public ActionResult Create(ProfitCategoriesModel profitcategoriesmodel)
        {
            var user = db.UserProfiles.FirstOrDefault(x => x.UserId == WebSecurity.CurrentUserId);
            var addCategory = new ProfitCategoriesModel
            {
                Name = profitcategoriesmodel.Name,
                IdUser = user,
                Id = profitcategoriesmodel.Id,
            };
          db.ProfitCategories.Add(addCategory);
            db.SaveChanges();

【问题讨论】:

  • 在名称的末尾附加一个值或 Andrey 建议的 Guid
  • [必填] public string Name { get;放; } 这是我的 ProfitCategoriesModel 中的一个值
  • 在问题中解释你的场景。 unique Name 是什么意思?
  • 我认为您需要的是对数据库中 Name 列的唯一约束。这可以防止您拥有多个具有相同名称的行。

标签: asp.net c#-4.0 asp.net-mvc-4


【解决方案1】:

如果我理解正确,您需要Guid.NewGuid().ToString()

【讨论】:

  • 我想说的是:我不想在我的数据库中有两条“Salary”记录。
  • @user2026573 我不明白你的意思。
猜你喜欢
  • 2014-10-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-18
  • 2011-07-04
相关资源
最近更新 更多