Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.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# 为什么不显示通过SQL Server对象资源管理器进行的手动修改,但添加了新记录?_C#_Sql_Entity Framework - Fatal编程技术网

C# 为什么不显示通过SQL Server对象资源管理器进行的手动修改,但添加了新记录?

C# 为什么不显示通过SQL Server对象资源管理器进行的手动修改,但添加了新记录?,c#,sql,entity-framework,C#,Sql,Entity Framework,您好,我有一个控制台应用程序,我在其中硬编码添加记录。之后,我进行手动修改和添加,并在控制台上显示它们。在控制台上可以看到修改和添加,但实际的修改没有,而添加的修改在新状态下可以看到 即: 记录1:“John”改为“K” 控制台应用程序显示记录1已被修改,但name属性未显示实际属性,而是显示旧属性。 当我添加记录2时,控制台显示新记录的实际数据。为什么会这样 Console.WriteLine("Welcome. Type YES to hard codedly add records.)")

您好,我有一个控制台应用程序,我在其中硬编码添加记录。之后,我进行手动修改和添加,并在控制台上显示它们。在控制台上可以看到修改和添加,但实际的修改没有,而添加的修改在新状态下可以看到

即:

记录1:“John”改为“K” 控制台应用程序显示记录1已被修改,但name属性未显示实际属性,而是显示旧属性。 当我添加记录2时,控制台显示新记录的实际数据。为什么会这样

Console.WriteLine("Welcome. Type YES to hard codedly add records.)");
            if (Console.ReadLine().Equals("YES"))
            {
                using (var db = new HomeContext())
                {
                    db.Homes.Add(new Home { Owner = "John", Time = DateTime.Now });
                    var count = db.SaveChanges();


                    DateTime old = db.Homes.Max(u => u.Time);

                    Console.WriteLine("{0} records saved to database", count);
                    Console.WriteLine("All records:");
                    foreach (var home in db.Homes)
                    {
                        Console.WriteLine(home);
                    }
                    Console.WriteLine("When you've made the manual changes through SQL Explorer GUI on Visual Studio, type YES");
                    if (Console.ReadLine().Equals("YES"))
                    {

                        var records = db.Homes.Where(u => u.Time > old).ToList();              
                        Console.WriteLine("These are the recently made changes:");
                        foreach (var home in records)
                        {
                            Console.WriteLine(home);
                        }
                    }
                    Console.ReadKey();
                }
        }
控制台输出:

所有记录: 房主约翰

使用资源管理器手动添加和修改

键入是

以下是最近所做的更改:

房主约翰
Home 2 Owner newRecord

稍微改变一下结构


查询数据库时,使用GUI通过SQL Server对象浏览器使用数据库上下文的新对象。单击表上的“查看数据”并手动进行添加。Visual Studio。英孚。先编码。C#我对EF和Visual Studio非常陌生。我单击刷新并单击行上的enter。刷新所有内容,但没有效果。我肯定会离开这里是的,我看到了所有的变化。奇怪的事情正在控制台上发生,我做了改变。我在资源管理器的表上看到它们。然后我执行了查询,也看到了更改在不起作用的行之前,它是否起作用?