ユーザーがボタンをクリックすると、指定されたサーバーとデータベース接続を持つSQL Server Management Studioクエリエディタが開きます。私はこれと同じ機能を持つことができますが、既に実行しているSSMSのインスタンス(新しいプロセスを開始しない)を使用することができます。C#アプリケーションでSSMSの新しいデータベース接続とクエリウィンドウを開きますか?
これまでの私のコード:限り私の研究が行く
if (IsProcessOpen("Ssms") == false)
{
Process ssms = new Process();
ssms.StartInfo.FileName = "C:\\Program Files (x86)\\Microsoft SQL Server\\110\\Tools\\Binn\\ManagementStudio\\Ssms.exe";
ssms.StartInfo.Arguments = "-S " + StaticVariables.Getserver + " -d " + StaticVariables.Getdatabase;
ssms.Start();
}
else
{
//In already running SSMS process, open connection to server and database with new query window.
}
私はそれについて考えましたが、これにはショートカットキーが必要です。ショートカットキーはユーザーやバージョンによって異なる可能性があるので、これはうまくいくとは思わない。要件は、C#アプリケーションが事前定義済みのSQLコードを実行することですが、カスタムSQLコードを実行する場合は、SSMS経由でサーバー/データベースに接続する必要があります。 – Fienix
それは難しいですね。これがアプリケーションに収まるかどうかは不明です。なぜアプリケーションがクエリを取得して代理で実行するのを許可しないのですか?あなたはSSMSを最大限に使いたいと思っていますか? – tempidope
私はSSMSが必要だと信じています。 1つの例は、推定された実行計画を表示する必要があるためです。 – Fienix