1

これを使用して、テーブル内の既存の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);

「EmailID」を表示する方法についての推測は、asp.netmvcを使用するユーザーにすでに存在します。

4

1 に答える 1

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>
<% } %>
于 2010-05-17T06:29:42.827 に答える