2010-03-16 116 views
6

如何在執行我的.Net應用程序期間始終保持打開(連接)SqlConnection(或使用其他組件)?如何保持SqlConnection始終打開

我需要這個,因爲我的應用程序需要使用此commnad

exec sp_who2 

我的應用程序有多少個實例連接到MYDATABASE,限制使用權限(許可證控制)來檢測。

例如

A)我的應用程序從LOCATION1

  1. 檢查使用exec sp_who2
  2. 如果我的應用程序<數MaxLicencesConnected我的應用程序連接到SQL服務器的數量執行然後啓動我的應用程序並打開一個sqlconnection

B)我的應用程序從LOCATION2

  1. 檢查使用exec sp_who2
  2. 我的應用程序連接到SQL服務器的數目執行如果我的應用程序的數量> = MaxLicencesConnected然後關閉我的申請

對不起,我的英語。

在此先感謝。

回答

3

當程序啓動時添加記錄並在程序退出時將其刪除時,簡單地創建一個表格會更容易嗎?始終保持與SQL Server的連接是非常昂貴的。

從技術上講,有人可能會刪除記錄並啓動一個新實例,但顯然如果他們這樣做,那麼第一個實例將停止工作(假設它現在檢查它自己的記錄的存在並且然後)。

0

你可以設置一個連接對象,打開它並存儲在一個全局(靜態)變量中。我相信,你還必須設置連接超時,否則它會自動關閉,如果讓空閒。

說起來,我不認爲保持連接開放是一個好主意,因爲它們很貴。

1

使用連接池。設置最大池大小最小池大小在您的連接字符串中彙集

相關問題