2016-08-23 1 views
5

Je cherche un moyen d'importer un chargement de variables, calculé dans une boucle foreach, dans ma base de données. Je construis une application qui extrait les valeurs du texte brut (fichiers .txt). Dans l'exemple ci-dessous, je filtre une valeur hors de la chaîne de texte. Je souhaite que l'application insère automatiquement chaque valeur (après calcul) de la boucle dans une nouvelle ligne de la table de base de données. Est-ce que quelqu'un sait quelle est la meilleure façon de le faire, et comment le faire?Comment insérer une variable dans la base de données à partir de la vue dans MVC

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 /> 
    } 
} 

J'ai essayé d'ajouter ce code, mais il ne fonctionne pas:

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(); 
} 
+1

sans cadre JS. vous pouvez utiliser des méthodes natives javascript ou jquery ajax. –

+0

"ne fonctionne pas". comment exactement ça ne marche pas? Avez-vous une erreur? – ADyson

Répondre

0

Problème résolu!

j'ai ajouté le code suivant, qui a travaillé:

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(); 
         } 

Le programme insère automatiquement toutes les variables hors de la boucle foreach dans la base de données maintenant.