Skip to main content

Yesterday on one of SO chats I've been told I should never connect to database directly from the application and rather use DAL.

I've been told that:

  1. Using something in the middle should improve the performance of app-db communication (which I hardly believe, since there's an overhead coming from additional layer between them)
  2. It is more secure (in what terms?)
  3. It gives better scalability
  4. It allows cross-platform client application (not applicable, since it's written in C# and is only for Windows)

The biggest problem with current application is that 40-50 clients connected to database make it slows down massively.

So, my question is: how DAL can actually improve the performance(my main concern) of my system (in terms of server resource usage and client applications speed)?

@EDIT

The biggest problem with current application is that 40-50 clients connected to database make it slows down massively.

Yesterday on one of SO chats I've been told I should never connect to database directly from the application and rather use DAL.

I've been told that:

  1. Using something in the middle should improve the performance of app-db communication (which I hardly believe, since there's an overhead coming from additional layer between them)
  2. It is more secure (in what terms?)
  3. It gives better scalability
  4. It allows cross-platform client application (not applicable, since it's written in C# and is only for Windows)

So, my question is: how DAL can actually improve the performance(my main concern) of my system (in terms of server resource usage and client applications speed)?

@EDIT

The biggest problem with current application is that 40-50 clients connected to database make it slows down massively.

Yesterday on one of SO chats I've been told I should never connect to database directly from the application and rather use DAL.

I've been told that:

  1. Using something in the middle should improve the performance of app-db communication (which I hardly believe, since there's an overhead coming from additional layer between them)
  2. It is more secure (in what terms?)
  3. It gives better scalability
  4. It allows cross-platform client application (not applicable, since it's written in C# and is only for Windows)

The biggest problem with current application is that 40-50 clients connected to database make it slows down massively.

So, my question is: how DAL can actually improve the performance(my main concern) of my system (in terms of server resource usage and client applications speed)?

Source Link
pzaj
  • 143
  • 1
  • 10

.NET Why should I use DAL over direct database access

Yesterday on one of SO chats I've been told I should never connect to database directly from the application and rather use DAL.

I've been told that:

  1. Using something in the middle should improve the performance of app-db communication (which I hardly believe, since there's an overhead coming from additional layer between them)
  2. It is more secure (in what terms?)
  3. It gives better scalability
  4. It allows cross-platform client application (not applicable, since it's written in C# and is only for Windows)

So, my question is: how DAL can actually improve the performance(my main concern) of my system (in terms of server resource usage and client applications speed)?

@EDIT

The biggest problem with current application is that 40-50 clients connected to database make it slows down massively.