Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在ADO.NET实体框架上,DbContext对象没有表字段_C#_Sql Server_Visual Studio_Entity Framework - Fatal编程技术网

C# 在ADO.NET实体框架上,DbContext对象没有表字段

C# 在ADO.NET实体框架上,DbContext对象没有表字段,c#,sql-server,visual-studio,entity-framework,C#,Sql Server,Visual Studio,Entity Framework,我使用的是VS 2015社区、Windows 10、Microsoft SQL 2016 SP1。 我在项目中添加了一个SQL Server数据库。然后我在数据库中添加了一个名为“Dict”的表 下面我将解释如何在Visual Studio中使用ADO.NET。视频有点过时,但我按照相同的步骤创建实体模型。但是当我在21:01中访问该部分时,当我尝试访问context.Dict时,我的DbContext对象(如下所示)返回一个错误。它说没有找到Dict的定义 public partial

我使用的是VS 2015社区、Windows 10、Microsoft SQL 2016 SP1。 我在项目中添加了一个SQL Server数据库。然后我在数据库中添加了一个名为“Dict”的表

下面我将解释如何在Visual Studio中使用ADO.NET。视频有点过时,但我按照相同的步骤创建实体模型。但是当我在21:01中访问该部分时,当我尝试访问context.Dict时,我的DbContext对象(如下所示)返回一个错误。它说没有找到Dict的定义

    public partial class _Default : Page
      {
         protected void Page_Load(object sender, EventArgs e)
         {
            var context = new DictServerEntities1();

            var words = context.Dict;
更新:


我导入了一些微软提供的示例数据库(名为Northwind),它们与EF一起工作。因此,我的表对EF无效,我猜是因为它不包含主键。

答案是使用带有主键的表。我没有使用主键。

刚刚发现VS 2015上不再使用SQL Server Compact,因此视频已经过时。显然,现在使用的是LocalDB。删除有关创建本地数据库的问题。是否在.edmx模型中看到Dict?是否可能您没有按照18:13中的说明检查要生成的表?没有,但我检查了表。我没有VS2015,但在保存.edmx后,它应该生成模型和代码(请参阅18:54)。对我来说,它在2017年就开始起作用了。可能是在创建表之前生成了模型,因为生成了上下文。是否会出现消息“运行此文本模板可能会对您的计算机造成潜在危害…”,脚本是否已执行?点击OK后查看VS输出窗口了解详细信息。我记得文本模板窗口出现,但我总是在模型之前有表格。输出显示“无法将XML保存到配置文件Web.config”,因为另一个进程正在使用它。。。