現在、MVC3 ASP.NETアプリケーションで作業しています。ユーザーはフォームにいくつかの単純なテキストボックスを入力してから、送信ボタンを押します。ASP.NETのMVC3同じビューでフォームを送信した後のデータ結果を表示
送信ボタンをクリックすると、コントローラはテキストボックスの入力を使用し、LINQ to SQLを使用してストアドプロシージャクエリにSQLデータベースを呼び出し、データテーブルを返します。現在のところ、送信ボタンは新しいビューページの表にデータを表示しますが、これを変更して、ページを更新せずに送信ボタンのすぐ下にロードするように生成されたデータテーブルを持つようにしたいと考えています。
私は、AJAXまたはJqueryのどちらかを使用する必要があることを理解しています。ユーザーを新しいページに送信せずにデータを表示する方法を理解するのは難しいです。ビューページで
フォーム:
<% using (Html.BeginForm("RunQuery","RecentActivity"))
{%>
<fieldset>
<legend></legend>
<p>
<label for="Name">Name:</label>
<%= Html.TextBox("Name") %>
<%= Html.ValidationMessage("Name", "*") %>
</p>
<p> <label for="StartDate"> Start Date:</label>
<%= Html.TextBox("StartDate")%>
<%= Html.ValidationMessage("StartDate", "*") %>
<label for="EndDate"> End Date:</label>
<%= Html.TextBox("EndDate") %>
<%= Html.ValidationMessage("EndDate", "*") %>
</p>
<p>
<input type="submit",id="submit", value="Submit" />
</p>
</fieldset>
<% } %>
コントローラー:
ModelDataContext db = new ModelDataContext();
[HttpPost]
public ActionResult RunQuery(string Name,string StartDate, string EndDate)
{
var results= db.lastndays(Name, StartDate, EndDate);
return View(results.ToList());
}
すべてのヘルプは素晴らしいことだ、ありがとう。
質問: (結果は)...私はエラーを取得する場合には、「暗黙的にタイプを変換することはできません... BOOLする」、それはモデルがSQL –
からテーブルを返している、場合に役立ちます を私はちょうどあなたがそれを 'if(results.Count> 0)'に変更できる結果があるかどうかをチェックするためにその行を置いています 'db.lastndays'がリストを返すのですか? – Rafay
ストアドプロシージャ "lastndays"は、データテーブルを生成します。 –