2015-12-10 3 views
-1

Я пытаюсь вставить текстовый файл, отформатированный на C Sharp на сервер Microsoft SQL. У меня есть две таблицы Transaction и TMatch, в которых я хочу заполнить данные. 4 атрибута каждый. Я создал по 2 класса для каждого. Я знаю, как вводить данные вручную в базу данных через .Add() и .SaveChanges().Вставить в базу данных с помощью Entity Framework с C#

Вот то, что я до сих пор:

//Database insertions 
TTransaction txn = new TTransaction(); 
**txn.Amount = 56; //I want a variable used below (AMOUNT) to go into amount. 
txn.TRN = "sdfgsdfg";** //(TxnNo) to go into TRN 

ScotiaNYAEntities context = new ScotiaNYAEntities(); 
context.TTransactions.Add(txn); 
context.SaveChanges(); 

обходе текстовый файл с помощью цикла.

{ 
    if (line.Contains("AMOUNT:")) //Look where to end for Transaction Text 
    { 
     // For Amount 
     IsAmount=true; 
     if(IsAmount) 
     { 
      Amount = line.Replace("AMOUNT:", String.Empty).Trim(); 
      Console.WriteLine("AMOUNT: ********"); 
      Console.WriteLine(Amount); 
     } 
    }.............................................. 

Я не уверен, как ссылаться на переменную, а не только на значения.

спасибо.

ответ

0

Это то, что я сделал:

В цикл для чтения файла построчно

String TxnLOC = null; 
       IsTransactionLocation= false; 
       if (line.Contains("TRANSACTION LOC:")) 
       { 
        IsTransactionLocation = true; 
        if (IsTransactionLocation) 
        { 
         TxnLOC = line.Replace("TRANSACTION LOC:", String.Empty).Trim(); 
         Console.WriteLine("The Transaction Location: ********"); 
         Console.WriteLine(TxnLOC); 

        //Database insertion fot TTransaction Table 
        TTransaction txn = new TTransaction(); 

        txn.TRN = txnNo; 
        txn.Amount = Convert.ToDecimal(Amount); 
        txn.TransactionLocation = TxnLOC; 

        context.TTransaction.Add(txn); //Adding to the database 
        context.SaveChanges(); 

        IsTxnSection = false;//For 1 to many relationship 


       } 


       } 
0

прыжок веры, но вы могли бы иметь что-то вроде этого

using (ScotiaNYAEntities context = new ScotiaNYAEntities()) 
{ 
    foreach (string line in File.ReadLines(pathToFile)) 
    { 
    if (line.Contains("AMOUNT:")) 
    { 
     if (IsAmount) 
     { 
     string amount = line.Replace("AMOUNT:", string.Empty).Trim(); 

     TTransaction txn = new TTransaction(); 

     txn.Amount = amount; 
     txn.TRN = "sdfgsdfg"; 

     context.TTransactions.Add(txn); 
     } 
    } 
    } 

    context.SaveChanges(); 
} 
+0

Привет Крис, спасибо за ответ, но я не могу укладываться в подобные атрибуты, такие как количество, которое является TRN (с другим условием IF. Если я добавлю их в цикл (некоторые из них являются строковыми), который добавляет один строка вместо целой строки для одного идентификатора. – VJain

+0

его не совсем понятно, что вы пытаетесь сделать без лишних примеров –

+0

Я, наконец, получил его, чтобы он работал, используя ваш пример, спасибо человеку! – VJain

Смежные вопросы