【问题标题】:How to insert variable into Database from view in MVC如何从MVC中的视图将变量插入数据库
【发布时间】:2016-08-23 10:07:45
【问题描述】:

我正在寻找一种方法将在 foreach 循环中计算的大量变量导入我的数据库。我正在构建一个从纯文本(.txt 文件)中提取值的应用程序。在下面的示例中,我从文本字符串中过滤出 valuedate。我希望应用程序自动将循环中的每个值(计算后)插入数据库表的新行中。有谁知道最好的方法是什么,以及如何做?

foreach (string resultregel in mtregel)
{
    <br /><b>Rij: @regnr</b><br />

    regnr = regnr + 1;

    string valuedateimportA = resultregel.Remove(6);
    if (valuedateimportA.StartsWith("0"))
    {
        var valuedateimport = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day);
        <i>Value Date Import = No ValueDateImport found!!</i><br />
    }
    else
    {
        DateTime valuedateimportB = DateTime.ParseExact(valuedateimportA, "yyMMdd", System.Globalization.CultureInfo.InvariantCulture);
        string valuedateimport = valuedateimportB.ToString("d-M-yyyy");
        <i>Value Date Import = @valuedateimport</i><br />
    }
}

我尝试添加此代码,但它不起作用:

using (System.Data.SqlClient.SqlConnection connection = new System.Data.SqlClient.SqlConnection(connectionString)
{
    System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand("INSERT INTO Import_table (valuedateimport, description, valuename) VALUES (@valuedateimport, @description, @valuename)");
    cmd.CommandType = System.Data.CommandType.Text;
    cmd.Connection = connection;
    cmd.Parameters.AddWithValue("@valuedateimport", txtvaluedateimport.Text);
    cmd.Parameters.AddWithValue("@description", txtdescription.Text);
    cmd.Parameters.AddWithValue("@valuename", txtvaluename.Text);
    connection.Open();
    cmd.ExecuteNonQuery();
}

【问题讨论】:

  • 没有任何 JS 框架。您可以使用本机 javascript 或 jquery ajax 方法。
  • “不起作用”。它到底是怎么不工作的?你有错误吗?

标签: c# asp.net-mvc database sql-insert


【解决方案1】:

问题解决了!

我添加了以下代码,它有效:

string connectionstring = "Data Source=94.126.71.192;Initial Catalog=JasperTest;Persist Security Info=True;User ID=ID;Password=*********;MultipleActiveResultSets=True;Application Name=EntityFramework";

                         using (var conn = new System.Data.SqlClient.SqlConnection(connectionstring))
                         {
                             var cmd = new System.Data.SqlClient.SqlCommand("INSERT INTO Importtesttabel (valuedateimport) VALUES (@bar)", conn);
                             cmd.Parameters.AddWithValue("@bar", valuedateimport);
                             conn.Open();
                             cmd.ExecuteNonQuery();
                         }

程序现在自动将所有来自 foreach 循环的变量插入到数据库中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-13
    • 2013-11-14
    相关资源
    最近更新 更多