0
クライアントサーバーアーキテクチャがあります。私はサーバーと4台のクライアントマシンを持っており、各クライアントにはSQL ServerがLANに接続されています。C#とASP.NET 4.0を使用してSQL Serverの可用性を確認する方法
4つのクライアントデータベースが接続されていることを確認する必要があります。私のASP.NETコードで
<connectionStrings>
<add name="DBConnection"
connectionString="Data Source=192.168.1.90,1433;Initial Catalog=POS;Integrated Security=False;User Id=sa;Password=sql2008;"
providerName="System.Data.SqlClient" />
<add name="DBConnection1"
connectionString="Data Source=192.168.1.91,1433;Initial Catalog=POS;Integrated Security=False;User Id=sa;Password=sql2008;Connection Timeout=5"
providerName="System.Data.SqlClient" />
<add name="DBConnection2"
connectionString="Data Source=192.168.1.92,1433;Initial Catalog=POS;Integrated Security=False;User Id=sa;Password=sql2008;Connection Timeout=5"
providerName="System.Data.SqlClient" />
<add name="DBConnection3"
connectionString="Data Source=192.168.1.93,1433;Initial Catalog=POS;Integrated Security=False;User Id=sa;Password=sql2008;Connection Timeout=5"
providerName="System.Data.SqlClient" />
<add name="DBConnection4"
connectionString="Data Source=192.168.1.94,1433;Initial Catalog=POS;Integrated Security=False;User Id=sa;Password=sql2008;Connection Timeout=5"
providerName="System.Data.SqlClient" />
</connectionStrings>
私のweb.configファイルで
、私は私のウェブサービスではループ
<script type="text/javascript">
function CheckDB() {
for (var i = 1; i <= 4); i++) {
var DBConnection = "DBConnection" + i;
$.ajax({
type: 'POST',
url: 'StockIntegration.aspx/CheckDB',
data: "{DBConnection:" + JSON.stringify(DBConnection) + "}",
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
if (data.d == null || data.d == undefined) {
} else {
if (data.d == "1") {
$('[id$=Label1]').append("CONNECTED SYSTEM: " + DBConnection + "<br/>");
} else {
$('[id$=Label2]').append("DISCONNECTED SYSTEM: " + DBConnection + "<br/>");
}
}
},
error: function()
{ alert('there is some error'); }
});
}
}
</script>
のための内側のAjaxメソッドを使用しています
[System.Web.Services.WebMethod]
public static String CheckDB(String DBConnection)
{
try
{
SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings[DBConnection].ConnectionString);
SqlCommand cmd = new SqlCommand("select 1", con);
con.Open();
var rowCount = cmd.ExecuteScalar();
con.Close();
return rowCount.ToString();
}
catch
{
return "Fasle";
}
}
SQL Serverインスタンスのいずれかが切断されていると、ループは終了します。これを達成する方法は?接続されたSQL Serverインスタンスと接続されていないSQL Serverインスタンスの一覧を表示する必要があります。