问题

我想在我的解决方案中存储冗长的.sql脚本并以编程方式执行它们.我已经弄清楚如何执行包含我的sql脚本的字符串,但我还没有弄清楚如何从将存储在解决方案中的文件中读取字符串(例如在/ Scripts子文件夹下).

  最佳答案

首先,编辑 .sql 文件的属性,以便将其嵌入到资源中。

然后使用类似于以下代码来检索脚本:

 string commandText;
Assembly thisAssembly = Assembly.GetExecutingAssembly();
using (Stream s = thisAssembly.GetManifestResourceStream(
      "{project default namespace}.{path in project}.{filename}.sql"))
{
   using (StreamReader sr = new StreamReader(s))
   {
      commandText = sr.ReadToEnd();
   }
}
 

  相同标签的其他问题

c#.netsql