我是新的MVC工作在3层MVC项目,我正在使用一个现成的数据库。
现在我需要在业务层使用linq编写一个查询,以带来如下的医生列表:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using DoctorsSheet.DataAccess;
namespace DoctorsSheet.Business
{
class Doctor : IDoctor
{
DoctorsSheetDBEntities db = new DoctorsSheetDBEntities();
public IQueryable<Doctors> GetDoctors()
{
var doctors = from d in db.Doctors
select d;
return doctors.AsQueryable<Doctors>();
}
}
}
和当我从DoctorsController调用GetDoctors()时它告诉我对象引用没有设置为对象的实例
这是控制器:
public ActionResult Index()
{
var doctors = obj.GetDoctors().AsQueryable<Doctors>();
return View(doctors);
}
请帮我修理一下
让你的class为public
-
public class Doctor : IDoctor
然后按如下所示初始化obj
变量,然后使用obj
。
IDoctor obj = new Doctor();
注意:正如@Sippy解释的那样,您不需要使用GetDoctors().AsQueryable<Doctors>();