我正在尝试使用scriptcs 0.17.1 在 C# 中创建一个简单的脚本。这是我的脚本:
using System.Data;
using(var connection = new SqlConnection("constring"))
{
using(var command = new SqlCommand("select GETDATE()", connection))
{
connection.Open();
command.ExecuteNonQuery();
Console.WriteLine("Hello, world!");
}
}
当我通过scriptcs test.csx
这个运行给我错误:
CS0246:找不到类型或命名空间名称“SqlConnection”(您是否缺少 using 指令或程序集引用?)
根据文档:
默认情况下会引用 System、System.Core、System.Data、System.Data.DataSetExtensions、System.Xml、System.Xml.Linq 程序集。
我尝试将以下行添加到我的脚本顶部,但得到了同样的错误:
#r "System.Data.dll"
我尝试完全限定我的班级名称,System.Data.SqlConnection
但得到了同样的错误。
我已经验证了 GAC 中存在 System.Data.dllC:\Windows\Microsoft.NET\assembly\GAC_64\System.Data\v4.0_4.0.0.0__b77a5c561934e089
和C:\Windows\Microsoft.NET\assembly\GAC_32\System.Data\v4.0_4.0.0.0__b77a5c561934e089
普通的 .NET 控制台应用程序(非脚本)使用 SqlConnection 类没有问题。