我遇到从控制器发送数据到查看的问题。
当我从控制器传递值到视图时,它变为空。
我想显示约会的详细信息 特别是医生。
例如,如果患者XYZ想要在ABC Doctor上预约 特定的时间和日期,然后选定的医生只能查看 预约细节......患者也可以看到他的预约 的信息。
我有预约模式
public partial class Appointment
{
public int Id { get; set; }
public int PatientId { get; set; }
public int DoctorId { get; set; }
public Nullable<System.DateTime> Date { get; set; }
public Nullable<System.DateTime> TimeOfDrAvailablity { get; set; }
public virtual Doctor Doctor { get; set; }
public virtual Patient Patient { get; set; }
}
医生控制器(我正在尝试到目前为止......在这里我获得了dr.ID和Patient.Id但是当它通过查看它变为空时)
public ActionResult Appointment(Doctor doc)
{
var app=new Appointment();
app.DoctorId = db.Doctors.FirstOrDefault().Id;
app.PatientId = db.Patients.FirstOrDefault().Id;
return View();
}
查看
@using (Html.BeginForm(null, null, FormMethod.Post, new { @class = "form-horizontal role='form' " }))
{
<tr>
<td>@Html.DisplayFor((model=>model.Appointments.FirstOrDefault().Date), new { @class = "Form-control" })
</td>
<td>
@Html.DisplayFor((model => model.Id), new { @class = " Form-control" })
</td>
<td>
@Html.DisplayFor((model => model.Appointments.FirstOrDefault().PatientId), new { @class = " Form-control" })
</td>
<td>
<div class="btn-group">
<div class="btn btn-Sucess">
@Html.ActionLink("Edit", "Edit", new { id =Model.Id })
</div>
答案 0 :(得分:5)
您需要将模型传递给您的视图,如下所示
public ActionResult Appointment(Doctor doc)
{
var app = new Appointment();
[...]
return View(app);
}
您的视图会引用您的模型,如下所示
@model MyProject.Appointment
<p>Doctor: @Model.DoctorId</p>
<p>Patient: @Model.PatientId</p>