我有一个包含两个表的数据库。 第一个表包含第二个表中的外键。 在我的MVC项目中,我想显示值(存储在第二个表中) 只有第一张表中的ID ..
在SSMS中,我可以通过连接来完成此操作。但是我如何在c#中做到这一点?
rec.Title = item.Title + " - " + item.AppointmentLength.ToString() + " mins" + " BehandlingsID " + ***item.BehandlingarId***;
//
item.BehandlingarId 包含我想要更改为相应值的ID。
这是我的两个标签:
public class AppointmentDiary
{
public int ID { get; set; }
public DateTime DateTimeScheduled { get; set; }
public Behandlingar Behandling { get; set; }
public int? BehandlingarId { get; set; }
}
public class Behandlingar
{
public int BehandlingarId { get; set; }
public string Namn { get; set; }
public int Pris { get; set; }
public int Tid { get; set; }
}
List<DiaryEvent> result = new List<DiaryEvent>();
foreach (var item in rslt)
{
DiaryEvent rec = new DiaryEvent();
rec.EndDateString = item.DateTimeScheduled.AddMinutes(item.AppointmentLength).ToString("s");
rec.Title = item.Title + " - " + item.AppointmentLength.ToString() + " mins" + " BehandlingsID " + item.BehandlingarId;
}
答案 0 :(得分:1)
你期待这样的事吗?
var result=AppointmentDiary.Where(i=>i.BehandlingarId==BehandlingarId).ToList;
这将为您提供与BehandlingarId
表格中的AppointmentDiary
匹配的记录
编辑:
如果你想要相反的方式。
如果DB是您的datacontext
var result=DB.Behandlingar.Where(i=>i.BehandlingarId == BehandlingarId).FirstorDefault().Nam;
注意:此处的BehandlingarId是来自AppointmentDiary的外键。
假设你想要访问nam
的BehandlingarId = 1然后
var result=DB.Behandlingar.Where(i=>i.BehandlingarId == 1).FirstorDefault().Nam;
将为您提供与BehandlingarId==1
表格中的Behandlingar
匹配的第一条记录
您可以将此代码段放在要访问nam
希望这会有所帮助。