[英]Getting entity framework context in Linqpad?
我创建了一个DLL
程序集,其中包含用于northwind
数据库的edmx
。
我通过linqpad创建了对该DLL的引用,我确实看到了db并且能够运行查询。
但是 - 我想测试DeferredLoadingEnabled
属性的行为,我需要通过上下文变量设置它。
例如
ctx.DeferredLoadingEnabled = false;
但是我如何访问ctx
?
linqpad为我生成它,我需要访问它。
在Entity Framework 5中,等效属性是:
ctx.Configuration.LazyLoadingEnabled = false;
如果你在LINQPad中,那么你已经在上下文中,所以你可以说:
Configuration.LazyLoadingEnabled = false;
但是当我将代码从Visual Studio复制到LINQPad时,我通常只是在顶部添加一行,所以所有代码都是一样的:
var ctx = this;
使用Linqpad时,您实际上在 ObjectContext中。 只需输入:
this.
你可以在你的 ObejctContext访问属性。
(另请:确保使用“C#Statement”)
Entity Framework
没有DeferredLoadingEnabled
属性 - 它是Linq to SQL
一部分,而不是Linq to entities
(EF)。
实体框架默认延迟加载。 链接表将在访问时加载,或者当您自己显式加载它们或直接使用第一个资源加载它们时(加载加载)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.