-1

虽然我在其他编程语言方面有丰富的经验,但我是 .NET/MVC 的新手,所以我从彻底遵循Rick Anderson 的THIS TUTORIAL开始,并成功创建了项目运行所需的所有控制器和视图。

下一步是将表与外键相关联,我这样做如下:

public class Patient
{
    public int id { get; set; }
    public string name { get; set; }
    public string phoneNumber { get; set; }
    public string address { get; set; }
    public string postCode { get; set; }
    public string emailAddress { get; set; }
    public virtual Doctor doctor { get; set; }
}

属性“医生”将“患者”表与“医生”表相关联。到目前为止一切都很好。

现在,我需要更改实体框架已经为我创建的 Create 视图,以便我可以在下拉列表中查看所有可用的医生并进行选择。

我已经阅读了几十个论坛主题并尝试了许多解决方案,但没有让它发挥作用。我可以显示下拉列表,我可以用所有可用的医生填充它,但由于某种原因它不会验证。

这就是我将有关医生的信息传递到 Create Patient 视图的方式:

        var doctorsQuery = from doc in db.Doctors
                           orderby doc.name, doc.id
                           select new { doc.id, doc.name };

        var doctorsList = new List<KeyValuePair<int, string>>();

        foreach (var item in doctorsQuery) {
            doctorsList.Add(new KeyValuePair<int, string>(item.id, item.name));
        }

        ViewBag.doctorsList = doctorsList;

它不工作。

有人可以指出我正确的方向吗?这里最好的解决方案是什么?

4

1 回答 1

0

利用

公共虚拟 int DocID{ 获取;放; } 代替

公共虚拟医生医生{得到; 放; }

于 2013-01-04T22:10:03.943 回答