Link to home
Start Free TrialLog in
Avatar of isaacab
isaacabFlag for United States of America

asked on

Are Anonymous Methods Allowed Cross-Classes?

Hello All

I have on my website many processes that require a transfer page. For example, I have a login page, the customer has to supply his credentials, then he clicks Submit, then the website takes him to a transfer page (that invokes some methods) and finally redirects him to to the target page.

I have many transfer pages on my website, and I wanna use Anonymous Methods (.Net 2.0) to have one Transfer page that a will allow to assign a Anonymous Method to it.

Is this even doable? and if yes could anyone show an example please? This will be greatly appreciated!

Thanks In Advance.
Avatar of surajguptha
surajguptha
Flag of United States of America image

I dont see how anonymous methods would help you? Just curious....
Avatar of Joel Coehoorn
I think maybe he means delegates?
yeah but why would delegates be needed for a simple redirect?
Avatar of isaacab

ASKER

Yes, I mean delegates. I cannot get it work.
Is possible to assign a delegate to an instance of a class? if yes - could you show me some example please?

Thanks in advance.
Avatar of isaacab

ASKER

I don't need the delegates for a simple redirect, I need them to implement for each instance different lines of code.
The redirection will happen after those code lines will be executed.

I hope I'm clear enough.
Basically you need some function to run before the redirect isnt it?
Avatar of isaacab

ASKER

surajguptha,
Correct.
Create a common function which will take a few parameters and then redirect it... replace all instances of redirect with this function.
Avatar of isaacab

ASKER

OK. Here is my solution:
In my transfer page I have this code snippet:
private EventHandler executeDelegate = null;

This is how the client control looks like:
ASP Page
<%@ Register TagPrefix="uc1" TagName="ctlTran" Src="~/Components/CustomerInteraction/TransferCustomer.ascx" %>
<uc1:ctlTran ID="ctlTran1" runat="server" />

C# Code:
this.ctlTran1.ExecuteDelegate = delegate
{
PUT HERE THE CODE TO EXECUTE
};


This works fine to me. I'm sorry if I wasn't clear enough when writing the question.

Thanks Guys for trying to help. I really appreciate it!

Happy New Year to you all
ASKER CERTIFIED SOLUTION
Avatar of Computer101
Computer101
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial