New to n-tier (C# Web app / ASP.NET 1.1)

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



Needing guidance towards the next step. Apologies for the lengthy
description. My question in summary is "how do I call my data access
methods (and return a datatable) once they are in a seperate dll (on a
different machine)?"

Background:
I have an application (helpdesk/FAQ) written in C# and deployed under
IIS6. The "DAL" is simply 2 seperate C# files (one for Oracle and one
for SQL server - the only places in the project where connection to the
database is made), in their own folder within the VS project, therefore
compiled into the one single dll with the rest of the app. This is
deployed on IIS and the connection string / database type is held in
the web.config file (encrypted). It uses mainly "DataTable" to
populate DataGrids etc on the aspx web pages. When database updates
are required the DAL methods are passed an object array and gets the
schema from the database to create the correct parameters for the sql
update command. All good and well... however...

Question:
I now need to impliment a 3-tier architecture where the aspx pages
will stay on the web server but the DAL must be extracted to a seperate
dll which will be placed on an application server (behind a firewall).
So the structure will be

web server ----| firewall |---- application server ----- database

I have read a lot of the theory of n-tier but have never put this
into practice and Im worried Im missing something fundamental. Do I
have to use either a web service or remoting or is there a simplier
method? My app uploads file from the browser into the database so Im
worried about doing that via a web service.... Does the application
server have to have IIS running so that I can deploy my DLL and place
my connection string in the web.config file? I presume it must if I
do require a web service. I'm assuming that I need a second project
in Visual Studio so I can create a second DLL which will be the DAL.dll
- but I dont know how to call my data access methods once they are in
a seperate dll (on a different machine)

I only have experience of creating web apps that connect direct from
the web server to the database server (and now I want to mend my ways
and become a better person :) ...so I want to make sure I go the
right way now. Any advice, links to further reading, actual code
examples, general reassurance that this isnt going to be a complete
nightmare :) would be greatly appreciated! .

Thanks,
Alan Kirk

Glasgow,
Scotland.

(ps - I know VS2005 (.Net 2.0) will create the strongly typed xsd
files for me for each table but I dont really want to have to scrap the
data access methods I already have working, just find out how to call
them & return my datatable from a seperate machine)

.



Relevant Pages

  • Re: Win2k3 SP1 error: New transaction cannot enlist in the specifi
    ... What we came upon was the fact that Windows Server 2003 requires roles to ... Do you use SQL Username and password, or SSPI to logon to the database (if ... >> This dll supports transactions, but does not initiate transaction calls. ...
    (microsoft.public.windows.server.general)
  • Re: New to n-tier (C# Web app / ASP.NET 1.1)
    ... I have implemented a handful of apps that use Remoting internally to ... transport traffic from various database servers to different IIS6 ... for SQL server - the only places in the project where connection to the ... compiled into the one single dll with the rest of the app. ...
    (microsoft.public.dotnet.distributed_apps)
  • Re: Different databases
    ... When you say "depending on the client", does that mean the server uses some ... logic to determine which database to use for a given client (e.g. IP ... > I'm making a distributed application in which the data access component ...
    (microsoft.public.dotnet.framework.remoting)
  • Re: access to database from home
    ... I highly doubt that a free web hosting site makes proprietary Microsoft ... In order to use data access pages, ... ACCESS software must be installed on the server that hosts the .mdb file. ... I would like to have access to my database which i use at work (small ...
    (microsoft.public.access.dataaccess.pages)
  • Re: Any reason why accessing Access should slowdown?
    ... Using ADO with recordsets opened with 'adOpenKeyset' cursor ... App and database are all on the same machine. ... Yesterday the performance of data access became unacceptably slow, ... When the database is on a server most performance problems are related to ...
    (microsoft.public.vb.database)