Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 未将数据写入本地SQL Server数据库文件_C#_Sql_Sql Server_Database_Local - Fatal编程技术网

C# 未将数据写入本地SQL Server数据库文件

C# 未将数据写入本地SQL Server数据库文件,c#,sql,sql-server,database,local,C#,Sql,Sql Server,Database,Local,我已经编写了从传感器获取数据的程序,我正在尝试将此数据写入本地SQL Server数据库文件 代码不会产生任何错误,但数据未写入数据表 我使用了以下代码:(有什么建议吗?) 您正在调用ExecuteNonQueryAsync以异步插入记录,但随后您将立即关闭连接,而插入几乎肯定尚未完成 您应该改为使用同步调用,或者正确地使用异步-可能使方法异步,并等待ExecuteNonQueryAsync的结果。基本上,您需要等待操作完成后才能关闭连接 顺便说一句,您根本不需要显式地调用Close——您已经得

我已经编写了从传感器获取数据的程序,我正在尝试将此数据写入本地SQL Server数据库文件

代码不会产生任何错误,但数据未写入数据表

我使用了以下代码:(有什么建议吗?)


您正在调用
ExecuteNonQueryAsync
以异步插入记录,但随后您将立即关闭连接,而插入几乎肯定尚未完成

您应该改为使用同步调用,或者正确地使用异步-可能使方法异步,并等待
ExecuteNonQueryAsync
的结果。基本上,您需要等待操作完成后才能关闭连接


顺便说一句,您根本不需要显式地调用
Close
——您已经得到了一个
using
语句,因此连接将在执行退出块时被释放。(顺便说一句,不清楚为什么在
using
语句中有一个额外的块。)

您应该签出并停止使用
.AddWithValue()
-这可能会导致意外的结果…您正在插入异步,然后关闭连接。改为调用
ExecuteNonQuery
。从属性框中将Database1.mdf的“复制到输出目录”属性值设置为“不复制”。
    static void Insert(string date, double value, string deviceName)
    {
        string path = Directory.GetCurrentDirectory();
        string filename = path + "\\Database1.mdf";
        Console.WriteLine(filename);
        string connectionString = "Data Source=(LocalDB)\\v11.0;AttachDbFilename=" + filename + ";Database=Database1";

        using (SqlConnection conn = new SqlConnection(connectionString))

        try
        {
            {
                conn.Open();
                SqlDataAdapter adapter = new SqlDataAdapter();
                using (SqlCommand cmd = new SqlCommand("INSERT INTO DataTable VALUES(@Id, @Date, @Value, @Device Name)", conn))
                {
                    num11 += 1;
                    cmd.Parameters.AddWithValue("@Id", num11);
                    cmd.Parameters.AddWithValue("@Date", date);
                    cmd.Parameters.AddWithValue("@Value", value);
                    cmd.Parameters.AddWithValue("@Device Name", deviceName);

                    cmd.ExecuteNonQueryAsync();
                    //rows number of record got inserted
                }
                conn.Close();
            }
        }
        catch (SqlException es)
        {
            Console.WriteLine(es);
            //Display Error message
        }
    }