标签: lambda

奇怪的Lambda表达问题

List<string> a = new List<string>() { "a", "b", "c" };
List<string> b = new List<string>() { "a", "b", "c", "d", "e", "f" };

b.RemoveAll(a.Contains);
Run Code Online (Sandbox Code Playgroud)

如果你遍历b,它现在只包含de和f.任何人都可以扩展实际发生的事情,因为目前它根本没有任何意义.

编辑:我更多地谈论谓词的使用.怎么知道如何将内容传递到哪里?

.net c# linq lambda .net-3.5

0
推荐指数
2
解决办法
384
查看次数

我如何将这个lamba语句作为Linq To Sql?

怎么可以ThenBy翻译成Linq-To-Sql,请?

var movies = _db.Movies.Orderby(c => c.Category).ThenBy(n => n.Name)

var movies = from m in _db.Movies
             orderby m.Category
             // What's the syntax for ThenBy?! 
             // thenby m.Name 
             select m;
Run Code Online (Sandbox Code Playgroud)

当我尝试这样做时thenby m.Name,我得到编译器错误.

.net c# lambda linq-to-sql

0
推荐指数
1
解决办法
165
查看次数

List.ForEach中的lambda会导致内存泄漏和性能问题吗?

我有一个问题,我可以使用这样的东西解决

sortedElements.ForEach((XElement el) => PrintXElementName(el,i++));
Run Code Online (Sandbox Code Playgroud)

这意味着我在ForEach中有一个允许使用int i等参数的lambda.

我喜欢这样做的方式,但我读到某处匿名方法和lambda委托会导致大量内存泄漏,因为每次执行lambda时都会实例化某些内容但不会被释放.这样的事情.

你能告诉我这种情况是否属实,如果是这样的话?

c# foreach lambda list

0
推荐指数
1
解决办法
690
查看次数

C#LINQ/Lambda范围问题

我收到错误:

名为's'的局部变量不能在此范围内声明,因为它会给's'赋予不同的含义,'s'已在'子'范围内用于表示其他内容.

static void Main(string[] args)
{
    string s = "hello"; // Line 1
    var test = new[] { "abd", "def" }.Select(s => s.StartsWith("a")); // Line 2
}
Run Code Online (Sandbox Code Playgroud)

为什么?

我猜想第1行的's'会被'.Select(s => ..'第2行中的'decleration)阴影但是 - 据我所知 - 事实并非如此......

PS我不确定是否用正确的术语表示 - 如果有更好的单词/短语,请纠正我.

c# linq lambda

0
推荐指数
1
解决办法
1163
查看次数

调用方法的最快方法

阅读本文后,我发现了几种调用方法的方法.

致电方法:

public static void SendData(string value) { }
Run Code Online (Sandbox Code Playgroud)

呼叫:

delegate void MyDelegate(string value);

//Slow method - NOT RECOMMENDED IN PRODUCTION!        
SendData("Update");

// Fast method - STRONGLY RECOMMENDED FOR PRODUCTION!
MyDelegate d = new MyDelegate(SendData);
d.BeginInvoke("Update", null, null);
Run Code Online (Sandbox Code Playgroud)

这是真的吗?它更快吗?

Action send = () => Send("Update");
send();
Run Code Online (Sandbox Code Playgroud)

或许这个?

我需要将一个方法调用到具有最高性能的SQL CLR触发器中,因此即使很小的速度增加也是有意义的.

.net c# lambda delegates method-call

0
推荐指数
2
解决办法
2337
查看次数

如何在父类中获取子属性?

你能回答我下一步该怎么办吗?如何使用Lambda做到这一点?如果此方法不知道委托对象的类型,是否可以委托一些对象实例并使用其属性和方法?

class class_a {
    public string getChildData<T> (T dynamicInstance) {
        return dynamicInstance.prop;
    }
}

class class_b : a {
    public string prop = "prop_b";
}

class class_c : a {
    public string prop = "prop_c";
}

var inst_b = new b ();
var inst_c = new c ();
b.getChildData(b);
c.getChildData(c);
Run Code Online (Sandbox Code Playgroud)

目的:在父类中获取子属性?

更新:使用反射 - http://forums.asp.net/t/1608839.aspx

谢谢,阿尔乔姆

c# lambda expression class parent

0
推荐指数
1
解决办法
6275
查看次数

使用lambda表达式将IEnumberable <T>转换回原始类型

如果我有以下怎么做,我将lambda表达式的结果从IEnumerable转换回Customer类型,而不必迭代它.

public class Customer : CustomerModel
{
    public List<Customer> CustomerList {get;set;}

    public Customer GetCustomerFromListById(long id)
    {
        return CustomerList.Select(c => c).Where(i => i.Id == id);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# ienumerable lambda

0
推荐指数
1
解决办法
210
查看次数

这两个lambda表达式之间有区别吗?

这两个Lambda表达式之间有什么区别?第二个看起来更紧凑我应该总是这样做吗?

DataContext.Employee.Where(c=>c.id==check_id && c.username==user_name).Select(c=>c.Name).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

和

DataContext.Employee.FirstOrDefault(c=>c.id==check_id && c.username==user_name).Name;
Run Code Online (Sandbox Code Playgroud)

c# lambda

0
推荐指数
1
解决办法
270
查看次数

布尔值上的Lambda表达式

对于bool值比较,lambda表达式的正确语法是什么?

下面的示例显示了rsp.InputOutput哪个是bool值.但是,当我尝试执行此操作时,我收到编译器错误.我知道它的东西很小,任何帮助赞赏.

在这个例子中,我想选择InputOutput值为的所有规则集参数true.

validRuleSetParameters.SelectMany(rsp => rsp.InputOutput == true)
Run Code Online (Sandbox Code Playgroud)

谢谢Niall

c# linq lambda boolean

0
推荐指数
1
解决办法
4382
查看次数

C#关于lambda表达式作为方法参数的问题

在页面上code.google.com/p/fakeiteasy/我注意到了这一行:

A.CallTo(() => shop.GetTopSellingCandy()).Returns(lollipop);
Run Code Online (Sandbox Code Playgroud)

所以问题是 - 如何将lambda表达式作为方法参数传递?

c# lambda

0
推荐指数
1
解决办法
365
查看次数