生成用于Linq To Sql的数据上下文

时间:2013-12-29 19:29:20

标签: linq-to-sql datacontext linqpad

与linqpad的工作方式类似,当您只是添加数据库连接时,您会自动获得要使用的上下文。

enter image description here

我确实喜欢0工作来获得这个背景。 我如何在我的代码中做类似的事情?

假设我的一个项目我只想加载一个数据库

 var dataContext = new DataContext(myConnection);

//linqpad has like a typed context, which i'd like
var customer = dataContext.Customers.Where(x => x.Id == 4);

无需已创建和映射Customer类。

linqpad如何做到这一点?

我猜它是某种派生数据上下文,但是它如何处理所有具有正确属性的模型的创建呢?

任何指针都很棒

1 个答案:

答案 0 :(得分:1)

LINQPad“欺骗”并使用Reflection.Emit在幕后构建一个类型化的数据上下文。它看起来好像是动态的东西,但实际上,在Visual Studio中添加“LINQ to SQL Classes”项目(或者像Stephen建议的那样使用SqlMetal)并没有什么不同。