Which technologies do you recommend for Client/Server Application (3 tier)

I'm going to be building a client/server type of application and would like to use .NET technology - but am a little unsure about the architecture/which technologies to use. Let me describe the application for you:
The server side program must be able to parse web pages for certain data and store this data into a website. The server must do this every sunday night at 2am to archive that week's data. From what I understand, I will able to do this using HttpWebRequest and WebResponse and have found a tutorial on this. I would also like to archive the data using a SQLServer 2005 database, which will run on the same server as the parsing application.

The client side program must be able to connect to the server and run queries on the archived data, display the data to the user, and map some of the data using mappoint.net. I have done some reseach on socket programming for client/server applications and I understand how to send data/text back and forth, but I do not understand how I would go about executing database queries on the server. Any help on how I should go about this architecture would be appreciated.

Mike


Answer this question

Which technologies do you recommend for Client/Server Application (3 tier)

  • dbcuser

    Thanks for the quick reply.

    I like your idea of a web-based application, however, my client requires a desktop, client/server type of application.

    I read up on ADO.NET and this will work great for performing the queries on the server side application. However, the way I am envisioning the solution is that the client side software will call a method on the server application with the passed query parameters... sort of like a thin client, rather than a thick client.

    Perhaps my visioning is wrong and the client should simply use ADO.NET to connect to the database directly, rather than going through the server application. From my knowledge, though, it may be easier to manage security/load balancing by having a type of middleware, or server application that communicates with the database. My problem with this, though, is that I don't see how the client application can call a method on the server application, which connects to the database. Any ideas

  • Thomas Freudenberg

    1. What you need according my understanding is two projects solution:
      First project will analyze web pages and will store data on SQL server. This could be Windows Service as UI is not needed.
    2. Second one will be client side and will display data to the user. I suggest you to use Web application (web site) and ASP.NET wiht ADO.NET to query SQL Server. with this approach all you would need at client is simple browser :) The only complication is that you have to precise web script so it could be ran on IE, FireFox and other browsers.

    Hope this helps



  • AMaher

    You could use a server application that exposes methods as a web service which can be called with parameters and return the answer that you need.
  • Which technologies do you recommend for Client/Server Application (3 tier)