使用 DBContext 的 SQL 数据库未返回任何数据

No Data is being returned from SQL Database using DBContext

我正在创建一个使用 Bing 地图和 ASP.Net 绘制路线的系统。我想将路线上停靠点的邮政编码存储在 SQL 数据库中,并使用 MVC 将它们传递给视图。

但是,查询数据库不会return任何结果,即使数据库已填充。我在代码的各个部分使用了 Debug.WriteLine 并推断出虽然它正在连接到数据库并查询正确的 table,但当我在我的控制器中初始化 DBContext 时,使用 ToList.Count它显示 0.

我的代码如下:

控制器 - MapController.cs

private StopsDBContext db = new StopsDBContext();

public ActionResult Index()
    {

        Debug.WriteLine("***************************************************************************************");
        Debug.WriteLine("--->" + db.Stops.ToList().Count + "<---"); // this shows 0 
        Debug.WriteLine("***************************************************************************************");

        var Stops = from e in db.Stops
                    select e;

        List<Stop> Model = Stops.ToList();

        return View(Model);

    }

型号 - Stop.cs

public class Stop
{
    public int ID { get; set; }
    public string Name { get; set; }
    public string Postcode { get; set; }

    public Stop(int iD, string name, string postcode)
    {
        ID = iD;
        Name = name;
        Postcode = postcode;
    }

    public Stop() {}
}

public class StopLists
{
    public IEnumerable<Stop> StopList { get; set; }
}

public class StopsDBContext : DbContext
{
    public StopsDBContext()
    {
        Database.Log = s => Debug.WriteLine(s); //this shows the sql queries in the console
    }
    public DbSet<Stop> Stops { get; set; }
}

我在执行此操作之前已将硬编码数据传递到视图中,所以我知道那部分是正确的,并且由于它是 运行 查询,所以它必须连接到数据库,所以我不确定我要做什么失踪了。

提前致谢

编辑: 根据 Dai

的建议更新了 类

我认为你应该像这样使用构造函数:

public StopsDBContext() : base("name=Connectionname")

我现在已经解决了错误。感谢所有回复您的建议的人。

原来我的模型和我的 table 有不同的字段,我没有意识到,所以 DBContext 正在搜索不存在的字段。哎呀