あるコホートで二重引用符を追加しているかどうかを確認しようとしている場合は、「コホートにIDが既に存在しています」という警告メッセージをWebページに出力し、既存のIDを再度入力することはできません。 ifステートメントでチェックしましたが、ELSEステートメントのWebページに印刷する方法がわかりません。ここでC#コードでWebページに印刷
私はコントローラに変更しようとしているC#ファイル内のコードです:
foreach (string studentID in cc.students)
{
SqlDataReader rdr = null;
cmd = new SqlCommand(@"select * from CustomCohortStudent where PUID = @StudentID and cohortID = @cohortID", sqlConn);
rdr = cmd.ExecuteReader();
if (rdr == null)
{
cmd = new SqlCommand(@"insert into CustomCohortStudents(cohortID, PUID) values (@id,@StudentID)", sqlConn);
}
else
{
// code to print warning to the webpage
}
そして私はどのように私はそれに応じてビューでCSHTMLファイルを編集する必要があるかわからない... ここで私は私のindex.cshtmlファイルに持っていたものです:
<h2>Cohorts</h2>
<a href="CustomCohort/Create">Create</a><br /><br />
<table class="table">
<tr>
<!--
<th>
@Html.DisplayNameFor(model => model.id)
</th>
-->
<th>
@Html.DisplayNameFor(model => model.name)
</th>
<th>
<!--Actions-->
</th>
</tr>
@foreach (var item in Model)
{
<tr>
<!--
<td>
@item.id
</td>
-->
<td>
@item.name
</td>
<td>
<a href="CustomCohort/Edit/@item.id">Edit</a> |
<a href="CustomCohort/Delete/@item.id">Delete</a>
</td>
</tr>
}
</table>
だから私の質問です:私はコントローラにELSE文で追加する必要がありますし、ビューの中で何を修正しますか?
ありがとうございました!私のメソッドが: public ActionResult Create(CustomCohort cc)の場合結果と同じように機能しますか? – Sophie
そして、私はこの行をどこに置くべきですか?コントローラの "ViewBag.Result = MyInsertMethod()"? "MyInsertMethod()"がすでにコントローラに入っているので...ありがとうございました! – Sophie
'' 'ViewBag.Whatever' 'はあなたの例ではアクション(' '' 'Create(CustomCohort cc)' '')に入ります。実際の挿入は、コントローラのアクション内にあるすべてのもの、つまりSQLクエリ、データ処理、ビューの設定が混乱を招くため、独自の方法で最適になります) – Gerino