2016-08-23 36 views
5

Veritabanımdaki bir foreach döngüsünde hesaplanan değişkenlerin bir içeriğini içe aktarmanın bir yolunu arıyorum. Düz metin (.txt dosyaları) değerlerini ayıklayan bir uygulama yapıyorum. Aşağıdaki örnekte, metin dizesinden bir değer aralığı filtreliyorum. Uygulamanın, veri tabanındaki her değeri (hesaplandıktan sonra) veritabanı tablosundaki yeni bir satıra otomatik olarak eklemesini istiyorum. Bunu yapmanın en iyi yolunun ne olduğunu ve nasıl yapılacağını bilen var mı?MVC'de görünümden Veritabanına değişken nasıl eklenir?

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

Bu kodu eklemek denedim ama çalışmıyor:

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

. Yerel javascript veya jquery ajax yöntemlerini kullanabilirsiniz. –

+0

"çalışmıyor". tam olarak nasıl çalışmıyor? bir hata alıyor musun? – ADyson

cevap

0

Sorun çözüldü!

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

programı otomatik olarak hemen veritabanına tüm foreach döngüsü değişkenlerin kapalı ekler:

çalıştığım aşağıdaki kodu ilave edildi. Herhangi bir JS çerçevesi olmadan