Birectional (Client <--> Server)+ Stateful + Supporting Client Machine that only has .NET 2.0
I think I can't use WCF for the above requirements.
Does.NET Remoting support theserequirements? | | Dynamic | Yes it can.
You'll have to use a SAO-singleton if you want to maintain state (client-to-server communication). You'll alsohave to use a CAO for server-to-client communication. You should not use events, they are concidered bad practice in a remoting scenario.
WCF is not available in .NET 2.0 - Marked As Answer byDynamic Thursday, September 17, 2009 8:44 AM
-
| | Stefan_A | Hello,
Ok, I'll tell you what I know:
When concidering a distributed application, you first have to choose which technique you're going to use. In .NET 2.0, you have 3 options: web services, .NET remoting and Serviced Components. - Web services Choose for web services if either one of the clients is not a .NET application, orif communication occurs over the internet. - .NET remoting Choose for .NET remoting if performance is the main issue. When using .NET remoting you are restricted to using it over a LAN or on the same computer. Also, .NET remoting has been superseded by WCF, so if you have any possibility to upgrade the machines to .NET 3.5, that would probably be a better solution. - Serviced components Choose for Serviced components if you require very specific functionalities such as object pooling, just-in-time activation, distributed transactions/ CRM etc...
If you have chosen for a .NET remoting scenario, then you have 4 ways of hosting the service. - Console application Usually OK if you're still in development stage. Requires a user logged in. - Windows forms application Provides a more flexible GUI than a console app, but still requires a user logged in. - Windows service Does not require a user to be logged in. Can be used in an intranet if security is low. - ASP.NET Hosted by IIS, also does not require a user to be logged in. Provides web application security for your application. This is usually the solution if applications communicate over intranet (with secure routers between service and clients)
If you require more info, I suggest you search the MSDN or some blogs, becausethe concepts arefar tooextensive to discuss here. I hope this helps,
Kind Regards Stefan Adriaenssen - Marked As Answer byDynamic Thursday, September 17, 2009 8:44 AM
-
| | Stefan_A | Excellent!
My conclusion is for my scenario:
Bidirectional (Client <--> Server)+ Stateful + .NET 2.0 Client App + Intranet not Internet
The best (if not the only) option is:.NET Remoting + Windows Services to support:
If I could persude the big bosses to upgrade the clientPCsto .NET 3.5, my option would be: WCF (wsDualHttpBinding: Duplex Messaging)+ Windows Service. - Marked As Answer byDynamic Thursday, September 17, 2009 8:44 AM
-
| | Dynamic | Yes it can.
You'll have to use a SAO-singleton if you want to maintain state (client-to-server communication). You'll alsohave to use a CAO for server-to-client communication. You should not use events, they are concidered bad practice in a remoting scenario.
WCF is not available in .NET 2.0 - Marked As Answer byDynamic Thursday, September 17, 2009 8:44 AM
-
| | Stefan_A | Thanks Stefan.
WCF is available for a .NET 2.0 client when it provides a basicHttpBinding but this binding doesn't support bidirectional communication. It provides stateful communication via enablingSession. | | Dynamic | Have you worked with Socket Programming?
I am not clear about its relationship with .NET Remoting if there is any. | | Dynamic | No sorry I don't have any knowledge about socket programming. Nor do I know anything about WCF in .NET 2.0. As far as I know, it was introduced in .NET 3.0 I'm used to writing .NET remoting classes hosted in a Windows service, so no Sessions apply either. | | Stefan_A | Thanks Stefan,
I think for my new application finally I have to choose .NET Remoting and hosting it in a Windows Service as you mentioned.
Do you know what are the hosting solutions for a .NET Remoting Client/Server? | | Dynamic | Hello,
Ok, I'll tell you what I know:
When concidering a distributed application, you first have to choose which technique you're going to use. In .NET 2.0, you have 3 options: web services, .NET remoting and Serviced Components. - Web services Choose for web services if either one of the clients is not a .NET application, orif communication occurs over the internet. - .NET remoting Choose for .NET remoting if performance is the main issue. When using .NET remoting you are restricted to using it over a LAN or on the same computer. Also, .NET remoting has been superseded by WCF, so if you have any possibility to upgrade the machines to .NET 3.5, that would probably be a better solution. - Serviced components Choose for Serviced components if you require very specific functionalities such as object pooling, just-in-time activation, distributed transactions/ CRM etc...
If you have chosen for a .NET remoting scenario, then you have 4 ways of hosting the service. - Console application Usually OK if you're still in development stage. Requires a user logged in. - Windows forms application Provides a more flexible GUI than a console app, but still requires a user logged in. - Windows service Does not require a user to be logged in. Can be used in an intranet if security is low. - ASP.NET Hosted by IIS, also does not require a user to be logged in. Provides web application security for your application. This is usually the solution if applications communicate over intranet (with secure routers between service and clients)
If you require more info, I suggest you search the MSDN or some blogs, becausethe concepts arefar tooextensive to discuss here. I hope this helps,
Kind Regards Stefan Adriaenssen - Marked As Answer byDynamic Thursday, September 17, 2009 8:44 AM
-
| | Stefan_A | Excellent!
My conclusion is for my scenario:
Bidirectional (Client <--> Server)+ Stateful + .NET 2.0 Client App + Intranet not Internet
The best (if not the only) option is:.NET Remoting + Windows Services to support:
If I could persude the big bosses to upgrade the clientPCsto .NET 3.5, my option would be: WCF (wsDualHttpBinding: Duplex Messaging)+ Windows Service. - Marked As Answer byDynamic Thursday, September 17, 2009 8:44 AM
-
| | Dynamic |
|