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 question

于 2010-03-16T21:50:23.407 回答
1

您只需在连接字符串周围添加双引号。

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

注意两端的三个双引号和 at。

于 2010-03-16T21:56:41.583 回答