私の関数は多くの例外を引き起こします、それ故にパフォーマンスはそれほど素晴らしいものではありません。
文字列を返す前に、関数を修正してデータを検証する方法についてアドバイスをいただけますか?テーブルの数が0より大きいかどうかを確認しようとしましたが、常にそうであるとは限りません。
public String getString(String sql)
{
DataSet ds = new DataSet();
string connstring = String.Format("Server={0};Port={1}; User Id={2};Password={3};Database={4};", tbHost, tbPort, tbUser, tbPass, tbDataBaseName);
NpgsqlConnection conn = new NpgsqlConnection(connstring);
try
{
conn.Open();
NpgsqlDataAdapter da = new NpgsqlDataAdapter(sql, conn);
ds.Reset();
da.Fill(ds);
conn.Close();
return ds.Tables.Count == 0 ? "0" : ds.Tables[0].Rows[0][0].ToString();
}
catch (Exception msg)
{
if (conn.State.ToString() == "Open")
{
conn.Close();
}
return "0";
}
}