Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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# 直接引用LinqPad中的ObjectContext_C#_Entity Framework_Datacontext_Linqpad - Fatal编程技术网

C# 直接引用LinqPad中的ObjectContext

C# 直接引用LinqPad中的ObjectContext,c#,entity-framework,datacontext,linqpad,C#,Entity Framework,Datacontext,Linqpad,我正在将一些代码从LinqPad迁移到常规的C#VS2010环境中 我注意到在LinqPad中,您可以直接使用ObjectContext(即使用复数表名),而在我的常规(VS2010)C#代码中,我需要首先实例化ObjectContext 更清楚地说,假设我有一个名为“Categories”的表。要获得计数,我可以在LinqPad中执行以下操作: int i = Categories.Count(); 但在我自己的程序中,我必须这样做: MyEntities dc = new MyEntiti

我正在将一些代码从LinqPad迁移到常规的C#VS2010环境中

我注意到在LinqPad中,您可以直接使用ObjectContext(即使用复数表名),而在我的常规(VS2010)C#代码中,我需要首先实例化ObjectContext

更清楚地说,假设我有一个名为“Categories”的表。要获得计数,我可以在LinqPad中执行以下操作:

int i = Categories.Count();
但在我自己的程序中,我必须这样做:

MyEntities dc = new MyEntities();
int i = dc.Categories.Count();
我如何在自己的程序中获得额外的便利?我觉得我错过了一些基本的东西


谢谢你的帮助

LINQPad通过对类型化ObjectContext进行子类化来实现这一点。如果您愿意,您也可以在VS中执行同样的操作,尽管它可能会使您的类变得混乱,并且可以说是糟糕的设计,因为您不需要访问对象上下文的任何受保护成员

如果您只想在LINQPad vs中使用一致的方式编写查询,那么可以轻松地在LINQPad中创建一个等效变量,如下所示:

var db = this;
int i = db.Categories.Count();

+1.改变你的LINQPad风格以匹配现实生活中的编码,而不是相反的方式。太好了,我担心会涉及到一些疯狂的“使用”机制。