C# 直接引用LinqPad中的ObjectContext
我正在将一些代码从LinqPad迁移到常规的C#VS2010环境中 我注意到在LinqPad中,您可以直接使用ObjectContext(即使用复数表名),而在我的常规(VS2010)C#代码中,我需要首先实例化ObjectContext 更清楚地说,假设我有一个名为“Categories”的表。要获得计数,我可以在LinqPad中执行以下操作: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
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风格以匹配现实生活中的编码,而不是相反的方式。太好了,我担心会涉及到一些疯狂的“使用”机制。