![]() |
1
5
tolist()肯定会阻碍你。您应该对整个查询执行tolist()操作。 我认为你能做的另一件事是使用“让”。我认为,在这种情况下,它可以创建延迟执行并包含在表达式树中,但YMMV。
|
![]() |
2
2
这可能是linq本身不够的情况之一。您是否考虑过将此逻辑编写为udf或存储过程,而只是使用linq调用它?linq to sql也很擅长调用(实体框架在udf中不是很好)。 然后可以在数据库中进行标记组合,并将其作为varchar返回。在没有光标的情况下执行此操作有一个tsql技巧:
(也许去掉了后面的逗号)
在运行这个之后,
|
![]() |
3
2
您可以尝试对此对象关联配置紧急加载。类似于:
但您可能需要对代码进行一些重构。基本上,您是告诉框架发出sql来拉入更宽的对象图,而不是等到访问对象关联(默认情况下是延迟加载)。 也许看见 http://blog.codeville.net/2007/12/02/linq-to-sql-lazy-and-eager-loading-hiccups/ )顺便说一下,不同的史蒂文! |
![]() |
4
0
我想问题是你也应该为整个查询调用.tolist()。这将从数据库中一次性返回整个集合。 在您的例子中,第一个sql命令只返回所有问题的id,然后对每个问题(在foreach循环的迭代过程中)进行一次sql调用-请参见@x1 param。 |
![]() |
5
0
你可以这样做懒惰加载:
lazylist是一个实现ilist的可IQueryable容器。一旦枚举了TagList属性,存储在其中的IQueryable就会被执行。 LaZyLIST类是由Rob Connery编写的,可以在这里找到: http://blog.wekeroad.com/blog/lazy-loading-with-the-lazylist/ |
![]() |
Emopusta · 从后端到前端的图像路径不工作 2 年前 |
![]() |
Asdrubal Hernandez · Linq查询特定数组索引出错 2 年前 |
![]() |
Niyazi Babayev · 如何在表达式中动态应用表达式? 2 年前 |
|
Dansih · .Net核心自定义身份验证方案 2 年前 |
![]() |
lolorekkk · 面板插入。NET WinForm 2 年前 |