0

この記事を読んだ後、System.Diagnostics.ProcessによってEFモデルを生成しようとしました。

Process myProcess = new Process();
    var cs = "Data Source=.\\SQLEXPRESS; Initial Catalog=uqs; Integrated Security=SSPI";
    myProcess.StartInfo.FileName = @"C:\Windows\Microsoft.NET\Framework\v3.5\EdmGen.exe";
    myProcess.StartInfo.Arguments = "/mode:fullgeneration /c:"+cs+" project:School /entitycontainer:SchoolEntities /namespace:SchoolModel /language:CSharp ";
    myProcess.Start();

しかし、整形式の引数文字列を実行できないため、結果が得られません。私が試したように、多くの引用があります。引数文字列を整理する方法は?

4

2 に答える 2

1

ポイント 1: 接続文字列を少なくともいくつか引用符で囲む必要があると思います。

    myProcess.StartInfo.Arguments = "/mode:fullgeneration \"/c:"+cs+"\" project:School ...";

ただし、デバッガーで結果の Arguments 文字列を調べて、すべてが問題ないかどうかを確認してください。

ポイント 2 については、この SO の質問を参照してください。

于 2010-03-16T21:50:23.407 に答える
1

接続文字列を二重引用符で囲むだけです。

var cs = @"""Data Sour[...]rity=SSPI""";

両端の 3 つの二重引用符と at に注意してください。

于 2010-03-16T21:56:41.583 に答える