C# 从方法返回值
我需要从我的桌子上为一个特定的病人安排所有的预约,为此我试着C# 从方法返回值,c#,asp.net,entity-framework,C#,Asp.net,Entity Framework,我需要从我的桌子上为一个特定的病人安排所有的预约,为此我试着 public List<Appoinment> GetAppoinments() //here Appointment is a class. { List<Appoinment> appointments = null; foreach (DataObject.Appointment appointment in
public List<Appoinment> GetAppoinments() //here Appointment is a class.
{
List<Appoinment> appointments = null;
foreach (DataObject.Appointment appointment in
dataEntities.Appointments.Where(a => a.PATIENTID == PatientId))
{
}
return appointments;
}
appointments.add(appointment);
它的错误是,它不能自动从数据库表约会转换为类约会,对吧
我不知道怎么做,这里有人能帮我吗,提前谢谢你你可以这样做:
public List<Appointment> GetAppointments()
{
return dataEntities.Appointments
.Where(a => a.PATIENTID == PatientId)
.Select(a => new OtherNamespace.Appointment
{
Id = a.Id,
Name = a.Name,
// etc.
})
.ToList();
}
dataEntities.Appointments.Where(a => a.PATIENTID == PatientId)
.Select (new Appoinment { ... set values from DB element });
你可以这样做:
dataEntities.Appointments.Where(a => a.PATIENTID == PatientId)
.Select (new Appoinment { ... set values from DB element });
你把数据.约会转换成你的.约会 你可以这样做
My.Appoint resultAppointment = new My.Appointment();
resultAppointment.Id = dataAppointment.Id
但更好的方法是在数据点上应用投影。生成的sql查询将只获取必需的字段
public List<Appoinment> GetAppoinments() //here Appointment is a class.
{
return dataEntities.Appointments.Where(a => a.PATIENTID == PatientId))
.Select(a => new Appointment() { Prop1 = a.Prop1})
.ToList();
}
你把数据.约会转换成你的.约会 你可以这样做
My.Appoint resultAppointment = new My.Appointment();
resultAppointment.Id = dataAppointment.Id
但更好的方法是在数据点上应用投影。生成的sql查询将只获取必需的字段
public List<Appoinment> GetAppoinments() //here Appointment is a class.
{
return dataEntities.Appointments.Where(a => a.PATIENTID == PatientId))
.Select(a => new Appointment() { Prop1 = a.Prop1})
.ToList();
}
我同意上面的解决方案……但是, 如果您必须经常编写这种映射代码。。。即将一个对象的属性复制到另一个对象的代码,那么您可以考虑使用AutoPuffer-
我同意上述解决方案……但是, 如果您必须经常编写这种映射代码。。。即将一个对象的属性复制到另一个对象的代码,那么您可以考虑使用AutoPuffer-
您应该执行约会。根据您正在迭代的当前约会,添加新约会{ParientId=…,OtherStuff=…}。还可能希望在向其添加元素之前初始化空列表!感谢downvote和UpVote,您可能应该向我们展示约会类的界面。没有他们很难帮上忙。谢谢,我只是尝试了克雷格的方法,它的工作原理是你应该做任命。根据你正在迭代的当前任命添加新的任命{ParientId=…,OtherStuff=…}。在向其添加元素之前,可能还需要初始化空列表!感谢downvote和UpVote,您可能应该向我们展示约会类的界面。没有他们很难帮上忙。谢谢,我只是尝试了Craig的方法,它的工作方式,是的,将其转换为列表。它的显示错误类似,不能隐式地从数据库约会转换为业务对象约会,是的,将其转换为列表。它的显示错误类似,无法从数据库约会隐式转换为业务对象约会AM gettin错误,如无法转换int?到int,像这样,ySure。如果在一个类型和int上有一个int Foo属性?Foo在另一个类型上,则必须转换,例如Foo=a.Foo.HasValue?a、 值:0,am gettin错误,无法转换int?到int,像这样,ySure。如果在一个类型和int上有一个int Foo属性?Foo在另一个类型上,则必须转换,例如Foo=a.Foo.HasValue?a、 值:0,不,不要使用自动映射。这对IQueryableNo没用,不要用AutoMapper。这对我来说没用