首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linq-To-Sql LoadWith命令

Linq-To-Sql LoadWith命令
EN

Stack Overflow用户
提问于 2013-11-26 00:59:47
回答 1查看 93关注 0票数 0

当使用LoadWith选项运行时,我如何获取用于取回子记录的查询的SqlCommand

假设有这样一个模式(非常速记,但应该可以解释正在发生的事情):

代码语言:javascript
复制
Widget:
   Id int not null identity(1,1) primary key
   IsNeeded bit not null

DooHickey
   Id int not null identity(1,1) primary key
   WidgetFk int not null references Widget(Id)

使用visual studio中的拖放界面转换为Linq- to -Sql类。

示例:

代码语言:javascript
复制
using(var ctx = GetDataContext()) {
  var dlo = new DataLoadOptions();
  dlo.LoadWith(widget => widget.DooHickeys);
  ctx.LoadOptions = dlo;
  var query = ctx.Widgets.Where(x => x.IsNeeded);

  // The "select * from Widget where IsNeeded = 1" command
  var mainCmd = (SqlCommand)ctx.GetComamnd(query);

  // Want Command for getting the DoHickeys
}

这将使为DataContextIQueryable自动创建SqlDependencies变得更容易。也许我正在用一种很难的方式来做这件事,而有人已经解决了这个问题……我会接受一个没有引入新依赖项(比如System.Web)的第三方工具(请安装NuGet)。

EN

回答 1

Stack Overflow用户

发布于 2013-11-26 01:04:05

代码语言:javascript
复制
var query = ctx.Widgets.Where(x => x.IsNeeded);

应该是

代码语言:javascript
复制
var query = ctx.Widgets.Where(x => x.IsNeeded == 1);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20198815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档