Can an anonymous method in C# call itself?

anonymous-methods, c#, recursion

Solution

You can break it down into two statements and use the magic of captured variables to achieve the recursion effect:

myDelegate build = null;
build = delegate(Object bj)
        {
           var letters= string.Empty;
           if (someCondition)
               return build(some_obj);                            
           else string.Empty;
        };

Problem

I have the following code: ``` class myClass { private delegate string myDelegate(Object bj); protected void method() { myDelegate build = delegate(Object bj) { var letters= string.Empty; if (someCondition) return build(some_obj); //This line seems to choke the compiler else string.Empty; }; ...... } } ``` Is there another way to set up an anonymous method in C# such that it can call itself?

Original source