Click here to Skip to main content
15,883,821 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Say we have a class like this :
C#
public class someclass
{ 
   public string Name;
   public string Address;
   public int Code;
}

Is there a way to create a method like this
C#
public delegate Insert(string Name, string Address, int Code);

Using lambda expressions at design/compile without code/template generation?
Posted

I think the answer of VirtualBlackFox will help you at this page :

http://stackoverflow.com/a/1575153[^]

CodeDOM documentation :
http://msdn.microsoft.com/en-us/library/y2k85ax6.aspx[^]

Hope it helps.
 
Share this answer
 
Hi,

I think you can use Action [^] and Func[^] predefined delegates.

Using them looks like this:
C#
Func<string,> insert = (Name, Address, Code) => 
		{
			// Do something with Name, Address and Code
			return String.Format("Data inserted:[Name={0}; Address={1}; Code={2}]", Name, Address, Code);
		};
	
	string result = insert("Martin Arapovic", "Split, Croatia", 100);
	
	Console.WriteLine(result);

Actually this can be done in design time, but to use it in runtime I think you will work with ExpressionTrees:
1. http://www.thejoyofcode.com/Lambda_and_Expression_Trees.aspx[^]
2. http://msdn.microsoft.com/en-us/library/bb397951.aspx[^]
3.http://www.abhisheksur.com/2010/09/use-of-expression-trees-in-lamda-c.html[^]
3. http://blogs.msdn.com/b/csharpfaq/archive/2009/09/14/generating-dynamic-methods-with-expression-trees-in-visual-studio-2010.aspx[^]
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900