2つのコンソールアプリプロジェクト(prj1とprj2)があります。
最初にprj2にEF6コードがあり、ビルドしてから、その「Debug」フォルダーを別のディレクトリ(例:「D:\ Debug」)にコピーしました。
prj1で、次を使用してprj2を実行しようとしています。
Process p = new Process
{
StartInfo = new ProcessStartInfo("D:\\Debug\\prj2.exe")
};
p.Start();
問題は、データベースがprj1のDebugフォルダー内に作成されていることです(「D:\ Debug」内ではありません)。
しかし、「D:\ Debug \ prj2.exe」から直接prj2の.exeをダブルクリックして実行すると、すべて正常に動作します。
ProcessStartInfo.WorkingDirectoryを試してみるべきだと思います
var startInfo = new ProcessStartInfo("D:\\Debug\\prj2.exe");
startInfo.WorkingDirectory = "D:\\Debug";
Process p = new Process();
p.StartInfo = startInfo;
p.Start();
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加