0

こんにちは。楽しい時間をお過ごしください。質問があります。3 つのポイントに分けて説明します。

1: SQL サーバーに接続するためのクラスを作成します。接続は SQL サーバー認証を使用して行う必要があります。このクラスには、接続パラメーター用のいくつかの変数が含まれている必要があります。

2: 現在の接続パラメーターを表示するユーザー フォームを作成します。また、ユーザーがこれらのパラメーターを更新できるようにします。このフォームには、接続をテストするためのボタンと、ユーザーの変更を接続パラメーターに保存するための別のボタンが必要です。

3: ポイント 1 で作成したクラスによって作成された接続を、アプリケーション内の異なるフォーム間で共有する方法。あまりにも多くの接続を開いたままにしておくのではなく、理想的には 1 つの接続のみを開く必要があります。

この問題を解決できるコードを追加します。改善にご協力いただければ幸いです。

私はこれらすべてに慣れていません。助けてくれてありがとう。

4

2 に答える 2

3
  1. もう存在している; SqlConnectionそして多分SqlConnectionStringBuilder
  2. IDE経由ですでに存在しているようですが、前回確認したとき、これは再配布可能なdllではありませんでした。ただし、単純に aSqlConnectionStringBuilderを a にフックすることも、UI をゼロから作成PropertyGridすることもできます。
  3. 「1つの接続のみを開く必要があります」でさえ間違っています.IMO-組み込みの接続プーリングでそれを処理させます。必要なのは、接続文字列を含む構成クラスだけです-必要に応じて、非常にローカルに接続を処理します-つまり

    using(var conn = new SqlConnection(Config.ConnectionString))
    {
        conn.Open();
        // NOT SHOWN: do a couple of related operations
    } // <== and here, it dies
    
于 2013-09-24T08:10:12.647 に答える
0

1 : MSDN Web サイトにアクセスすると、必要なものが見つかります: http://msdn.microsoft.com/fr-fr/library/system.data.sqlclient.sqlcommand.aspx?cs-save-lang=1&cs-lang= csharp#コードスニペット-2

private static void ReadOrderData(string connectionString)
{
    string queryString = 
        "SELECT OrderID, CustomerID FROM dbo.Orders;";
    using (SqlConnection connection = new SqlConnection(
               connectionString))
    {
        SqlCommand command = new SqlCommand(
            queryString, connection);
        connection.Open();
        SqlDataReader reader = command.ExecuteReader();
        try
        {
            while (reader.Read())
            {
                Console.WriteLine(String.Format("{0}, {1}",
                    reader[0], reader[1]));
            }
        }
        finally
        {
            // Always call Close when done reading.
            reader.Close();
        }
    }
}

2: 接続プロパティ ( http://msdn.microsoft.com/en-us/library/System.Data.SqlClient.SqlConnection_properties.aspx ) を確認し、listView または同等のものを入力します。

3: 以前の SqlConnection.Open() を使用して対処する

于 2013-09-24T08:16:43.480 に答える