ASP.NET SQL Processes

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Tim::..

    ASP.NET SQL Processes

    Can someone please tell me how I get around this???

    I have an ASP.NET web application that uses an SQL 2000 database for the
    majority of the web sites content... If the application comes up with an
    error the process on the SQL server remains alive. How do I make sure that
    the process is killed on the SQL server even if there is an error???

    I guess you use "TRY" but am new to asp.net programming and would appritiate
    any examples or suggestions...

    Thanks
  • Eliyahu Goldin

    #2
    Re: ASP.NET SQL Processes

    SQL server doesn't keep any processes attached to the application. It just
    serves data access requests select/update/insert/delete. It doesn't care of
    the application errors.

    Eliyahu

    "Tim::.." <Tim@newsgroups .nospam> wrote in message
    news:BFC1082A-7060-4B53-9FD9-3EF188D5E7C1@mi crosoft.com...[color=blue]
    > Can someone please tell me how I get around this???
    >
    > I have an ASP.NET web application that uses an SQL 2000 database for the
    > majority of the web sites content... If the application comes up with an
    > error the process on the SQL server remains alive. How do I make sure that
    > the process is killed on the SQL server even if there is an error???
    >
    > I guess you use "TRY" but am new to asp.net programming and would[/color]
    appritiate[color=blue]
    > any examples or suggestions...
    >
    > Thanks[/color]


    Comment

    • Steven Cheng[MSFT]

      #3
      Re: ASP.NET SQL Processes

      Hi Tim,

      I think the "process" you mentioned maybe means the "connection " from the
      client application which made between the client and server. Yes, there may
      occur such connection leak when we didn't protect the code well in our data
      accessing application. In .NET, when we use the ADO.NET's connection
      objects to connect SQLServer or other DB, the .NET will internally manage a
      connection pool, when we create SqlConnections, the ADO.NET will retrieve
      connection from the pool if there is existing connection available,
      otherwise, creating new connection and pool it into the pool. So in our
      applicaiton which performing data access through ADO.NET, we just need to
      make sure, we call connection.Clos e to release the connection (release it
      back to the .net's internal conneciton pool's management) after we
      finishing used it. In your scenario, you'd like to make sure database
      connection get relesed when there occurs unexpected exceptions, I think you
      can consider wrapper your data accessing code into the classic

      try .... catch...finally code block, for example:

      [c#]

      SqlConnection conn;
      SqlCommand comm;

      try
      {
      conn = new SqlConnection (....);
      } catch( xxxException ex)
      {
      ......
      }finally
      {
      //DataReader.clos e if exist
      conn.close();
      }

      all the code in finally block will be guranteed to get executed. Also, in
      C# , there exist the
      Using(SqlConnec tion conn = new .....)
      {
      ....
      }

      Using statement will ensure that the object create in the (..) will be
      guranteed to release after the execution section.

      #using Statement
      Find official documentation, practical know-how, and expert guidance for builders working and troubleshooting in Microsoft products.

      rame=true

      Here is another msdn reference describing the .NET's connection pool
      regarding on SQLServer:

      #The .NET Connection Pool Lifeguard
      Find official documentation, practical know-how, and expert guidance for builders working and troubleshooting in Microsoft products.

      lLifeguard.asp? frame=true

      Hope also helps. Thanks,

      Steven Cheng
      Microsoft Online Support

      Get Secure! www.microsoft.com/security
      (This posting is provided "AS IS", with no warranties, and confers no
      rights.)








      --------------------
      | From: "Eliyahu Goldin" <removemeegoldi n@monarchmed.co m>
      | References: <BFC1082A-7060-4B53-9FD9-3EF188D5E7C1@mi crosoft.com>
      | Subject: Re: ASP.NET SQL Processes
      | Date: Thu, 1 Sep 2005 11:47:27 +0200
      | Lines: 22
      | X-Priority: 3
      | X-MSMail-Priority: Normal
      | X-Newsreader: Microsoft Outlook Express 6.00.2800.1506
      | X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506
      | Message-ID: <O#ZdhHtrFHA.32 64@TK2MSFTNGP10 .phx.gbl>
      | Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
      | NNTP-Posting-Host: 212.143.94.2
      | Path: TK2MSFTNGXA01.p hx.gbl!TK2MSFTN GP08.phx.gbl!TK 2MSFTNGP10.phx. gbl
      | Xref: TK2MSFTNGXA01.p hx.gbl
      microsoft.publi c.dotnet.framew ork.aspnet:1216 57
      | X-Tomcat-NG: microsoft.publi c.dotnet.framew ork.aspnet
      |
      | SQL server doesn't keep any processes attached to the application. It just
      | serves data access requests select/update/insert/delete. It doesn't care
      of
      | the application errors.
      |
      | Eliyahu
      |
      | "Tim::.." <Tim@newsgroups .nospam> wrote in message
      | news:BFC1082A-7060-4B53-9FD9-3EF188D5E7C1@mi crosoft.com...
      | > Can someone please tell me how I get around this???
      | >
      | > I have an ASP.NET web application that uses an SQL 2000 database for the
      | > majority of the web sites content... If the application comes up with
      an
      | > error the process on the SQL server remains alive. How do I make sure
      that
      | > the process is killed on the SQL server even if there is an error???
      | >
      | > I guess you use "TRY" but am new to asp.net programming and would
      | appritiate
      | > any examples or suggestions...
      | >
      | > Thanks
      |
      |
      |

      Comment

      Working...