对象引用未设置为对象 MVC 5 的实例

Object reference not set to an instance of an object MVC 5

我是从事 3 层 MVC 项目的 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>();