C# lambda语法的问题, 急用

不能理解这个函数是怎么调用的, 请说明流程, 最好能提供官方的文档地址,
急用, 非常感谢

    public void c1()
    {
        string s = "abc";

        int n = Create(d => s);

        Console.WriteLine(n.ToString());
    }

    public int Create(Func<int, string> dataGenerator)
    {
        int id = 2;

        string s2 = dataGenerator(id);

        return id;
    }

主要看Func这个:http://www.cnblogs.com/akwwl/p/3232679.html,然后传入lambda:d => s

 Func

   Func是有返回值的泛型委托

   Func<int> 表示无参,返回值为int的委托

   Func<object,string,int> 表示传入参数为object, string 返回值为int的委托

   Func<object,string,int> 表示传入参数为object, string 返回值为int的委托

   Func<T1,T2,,T3,int> 表示传入参数为T1,T2,,T3(泛型)返回值为int的委托

   Func至少0个参数,至多16个参数,根据返回值泛型返回。必须有返回值,不可void

http://www.cnblogs.com/kingmoon/archive/2011/05/03/2035696.html

Create(d => s) 无论输入什么参数, 都返回s, 第一次遇到这样的方法

该参数类型为委托类型需要定义一个方法

 private string MyFun(int p)
 {
  //todo
    return "要返回的处理结果";
 }
 Func<int,string> f1 = MyFun;
 //调用
 Create(f1(4));