リソースファイルでは、SQLスクリプトをビルドするためのインテリセンスを使用して、プロジェクト内の個別のファイルとしてそれらを比較することはできません。強力なタイプの方法でそれらにアクセスするためのヘルパークラスを作成できます。
public class Scripts
{
public static string Sql1
{
get
{
return GetResource("sql1.sql");
}
}
public static string Sql2
{
get
{
return GetResource("sql2.sql");
}
}
private static string GetResource(string name)
{
var assembly = Assembly.GetExecutingAssembly();
using(var stream = new StreamReader(assembly.GetManifestResourceStream("Myproject.Sql." + name)))
{
return stream.ReadToEnd();
}
}
}
たとえば、Dapperでは、次のようにスクリプトにアクセスできます。
using(var db = new SqlConnection("yourconnectionstring")){
db.Open();
var results = db.Query(Scripts.Sql1);
}