【发布时间】:2016-01-13 00:30:14
【问题描述】:
我使用 Visual Studio 2012 创建了一个新的控制台应用程序,并使用 Entity Framework 映射了我的数据库表。现在,当我使用诸如 MVC 之类的 Web 应用程序时,我通常会执行以下操作,即创建一个表示实体的新对象并引用所有可用的实体:
class Program
{
SEntities sd = new SEntities();
static void Main(string[] args)
{
sd.Levels.Add(new Level() { Name = "from CA" });
sd.SaveChanges();
}
}
但这会引发以下错误:
非静态字段、方法或属性“ConsoleApplication1.Program.sd”需要对象引用.....\ConsoleApplication1\Program.cs 16 17 ConsoleApplication1
我阅读了一些文章,似乎我需要通过打开using 块来引用控制台应用程序中的实体框架类,如下所示:
class Program
{
static void Main(string[] args)
{
using (SEntities sd = new SEntities())
{
sd.Levels.Add(new Level() { Name = "from CA" });
sd.SaveChanges();
}
}
}
所以我的问题是,为什么我不能按照第一种方法将整个方法包装在 using 块中听起来并不奇怪?
【问题讨论】:
标签: c# asp.net entity-framework visual-studio-2012 console-application