我正在尝试使用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.dll C:\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控制台应用程序(非scriptcs)使用SqlConnection类没有问题。
答案 0 :(得分:3)
您没有正确的命名空间。 SqlConnection
类实际上位于OnConnectedAsync()
答案 1 :(得分:1)
请查看名称空间System.Data.SqlClient
中定义的SqlConnection。
作为附加提示,您可以将代码发布到一个简单的命令行项目中,看看会发生什么。