| 
                             
                                      2
                                 
                                 | 
                    
| Matthew Kruskamp · 技术社区 · 15 年前 | 
| 
                         | 
                    
                              1 
                        
                        
                                  2
                             
                            基本上你不能。linq to sql没有办法“查看”seoname属性并将其转换为sql。但是,当您在linq to sql查询中内联编写看起来相同的代码时,编译器以linq to sql可以“查找”的方式构建它。它创建了一个表达式树——对查询中操作序列的抽象描述——而不是将代码编译为msil。 您可以通过创建一个表达式来解决这一问题,该表达式与seoiname执行相同的任务,但最终仍然会复制seoiname代码,以便让c将一个副本编译为可调用的msil方法,另一个则编译为表达式树。(尽管你可以四处工作 这 通过让seonname属性在运行时编译表达式树来工作:这样可以避免重复,但会牺牲一些性能,看起来有点奇怪。)  | 
                
| 
                         | 
                    
                              2 
                        
                        
                                  2
                             
                            看一看 LinqKit -它有一些东西可以让一个表达式调用另一个表达式,等等。我用谓词生成器做了很多很好的东西。  | 
                
| 
                         | 
                    A B · C#Excel自动调整列避免长文本时出错 8 月前 | 
| 
                         | 
                    Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 8 月前 | 
                         
                     | 
                    Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 8 月前 | 
| 
                         | 
                    Sei · Avalonia/WPF将路由器传递到控制模板 9 月前 |