我正在使用MVC3创建一个UI,根据用户选择生成文本文件消息。用户需要通过ID查找患者,然后通过我的数据库中的名称查找提供者,然后启动文本文件的创建。如果正确的对象传递给它(单独的程序集),我有消息生成器工作。
我需要一些帮助,了解如何实现搜索/选择/清除逻辑,以及提交结果来调用生成器。 (MVC3新手)
我制作了部分视图来显示搜索结果,并且我的索引视图中显示了基本搜索结果。
问题:
我的提供商搜索按姓氏&amp ;;返回提供商列表名字,我需要我的用户选择一个,如果名称不止一个。
如何将这些部分视图放在第三部分中,以发送结果?
如何才能清除部分结果?在发送结果之前,如何确保我在partials中有一个有效值?
任何方向都会有所帮助。感谢。
这是我的HomeController:
public class HomeController : Controller
{
private CrdDatabase db = new CrdDatabase(ConfigurationManager.ConnectionStrings["connectionString_CRD_TEST"].ConnectionString);
public PartialViewResult PatientSearch(string clinicNumber)
{
var patient = db.GetCRDPatientInformation(clinicNumber);
if (patient != null)
{
return PartialView("_PatientSearchResult", patient);
}
// need to determine how to return an error message/validation message.
return PartialView("_PartialClear");
}
public PartialViewResult ProviderSearch(string lastName, string firstname)
{
var providerList = db.GetCRDProviderList(lastName, firstname);
if (providerList.Count < 1)
{
return PartialView("_ProviderSearchResults", providerList);
}
return PartialView("_PartialClear");
}
public ActionResult Index()
{
return View();
}
}
这是_PatientSearchResult.cshtml局部视图:
@model Objects.CRDPatientInfo
<table id="searchResults">
<tr>
<th>
Clinic Number
</th>
<th>
Last Name
</th>
<th>
First Name
</th>
<th>
Middle Name
</th>
<th>
Date of Birth
</th>
<th>
Admin Gender
</th>
</tr>
<tr>
<td>
@Model.clinic_number
</td>
<td>
@Model.pat_name_last
</td>
<td>
@Model.pat_name_first
</td>
<td>
@Model.pat_name_mid
</td>
<td>
@Model.pat_birth_date
</td>
<td>
@Model.pat_gender_code
</td>
</tr>
</table>
_ProviderSearchResults.cshtml类似,只是它循环遍历模型中的列表。
到目前为止,这是我的Index.cshtml:
@{
ViewBag.Title = "Muse Orders Home Page";
}
<h2>@ViewBag.Message</h2>
@using (Ajax.BeginForm("PatientSearch", "Home", new AjaxOptions
{
HttpMethod = "GET",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "searchPatientResults"
}))
{
<text>Clinic Number:</text>
<input type="text" name="clinicNumber" />
<input type="submit" name="submitButton" value="Search" />
<input type="submit" name="submitButton" value="Clear" />
}
<table id="searchPatientResults">
</table>
@using (Ajax.BeginForm("ProviderSearch", "Home", new AjaxOptions{
HttpMethod = "GET",
InsertionMode= InsertionMode.Replace,
UpdateTargetId= "searchProviderResults"
}))
{
<text>Provider Last Name:</text>
<input type="text" name="lastName" />
<text>Provider First Name:</text>
<input type="text" name="firstName" />
<input type="submit" name="submitButton" value="Search" />
<input type="submit" name="submitButton" value="Clear" />
}
<table id="searchProviderResults">
</table>
@using (Ajax.BeginForm("GenerateOrder", "Home", new AjaxOptions
{
HttpMethod = "POST",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "generateOrder"
}))
{
<input type="hidden" name="patient" />
<input type="hidden" name="provider" />
<input type="submit" name="submitButton" value="GenerateOrder" />
<input type="submit" name="submitButton" value="Clear" />
}
<table id="generateOrder">
</table>