【问题标题】:How to return a message from my repository class to my controller and then to my view in asp.net-mvc?如何将消息从我的存储库类返回到我的控制器,然后返回到我在 asp.net-mvc 中的视图?
【发布时间】:2010-05-17 06:01:34
【问题描述】:

我用它来检查表中现有的 emailId 并将其插入...当用户尝试使用现有的 mailId 注册时,如何向用户显示消息效果很好...。

if (!taxidb.Registrations.Where(u => u.EmailId == reg.EmailId).Any())
{
     taxidb.Registrations.InsertOnSubmit(reg);
     taxidb.SubmitChanges();
}

我的控制器有这个,

 RegistrationBO reg = new RegistrationBO();
 reg.UserName = collection["UserName"];
 reg.OrgName = collection["OrgName"];
 reg.Address = collection["Address"];
 reg.EmailId = collection["EmailId"];
 reg.Password = collection["Password"];
 reg.CreatedDate = System.DateTime.Now;
 reg.IsDeleted = Convert.ToByte(0);
 regrep.registerUser(reg);

任何如何使用 asp.net mvc 向用户显示“EmailID”的建议...

【问题讨论】:

    标签: asp.net-mvc linq-to-sql exists if-statement


    【解决方案1】:

    使registerUser存储库方法返回一个布尔值,指示它是否已更新数据库,以便控制器操作变为:

    if (!regrep.registerUser(reg))
    {
        ViewData["message"] = string.Format("{0} already exists", reg.EmailId);
    }
    

    并在您的视图中显示消息:

    <div><%= Html.Encode(ViewData["message"]) %></div>
    

    如果您使用的是推荐的强类型视图,那么您可以在视图模型中添加一个布尔属性,该属性将指示数据库更新是否发生:

    model.EmailId = reg.EmailId;
    model.IsEmailExists = !regrep.registerUser(reg);
    return View(model);
    

    并在视图中测试模型值:

    <% if (Model.IsEmailExists) { %>
        <div><%= Html.Encode(Model.EmailId) %> already exists</div>
    <% } %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-10-09
      • 2021-08-27
      • 2021-08-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多