SQL Server Dapper Aktualisieren Sie eine Zeile, in der die Spalten unterschiedlich sind

c# dapper sql

Frage

Ich schreibe eine Open-Source-Anwendung ( https://github.com/J-east/WellsFargoPDFTaxExtractor ) für den Import von Kontoauszug PDFs in eine SQL-Server-DB-Instanz. Ich hätte gerne eine einfache Methode, um ein Transaktionsobjekt zu nehmen und die Transaktionsdatenbank zu aktualisieren. Siehe Code unten:

    public class Transaction {
        public int TransactionID;
        public long accountNumber;
        public DateTime TransDate;
        public string Title;
        public string Summary;
        public string catagory;
        public string typeOfTransaction;
        public double amount;
    }

    public static bool UpdateRow(Transaction t) {
        string sql = "update TRANSACTIONS SET ???? where TransactionID = @transactionID";

        // code to take t and update the rows where TransactionID = @transactionID and things are different

        return true;
    }

EDIT: Dank @Loofer habe ich dieses sehr coole Tool entdeckt: DapperContrib

    [Table("Transactions")]
    public class TransactionContrib {
        [Key]
        public int TransactionID { get; set; }

        public long AccountNumber { get; set; }
        public DateTime TransDate { get; set; }
        public string Title { get; set; }
        public string Summary { get; set; }
        public string Catagory { get; set; }
        public string TypeOfTransaction { get; set; }
        public double Amount { get; set; }
    }

    public static bool UpdateRow(TransactionContrib t) {
        string conStr;
        if (Program.Settings.SqlSettings.IntegratedSec) {
            conStr = $"SERVER={Program.Settings.SqlSettings.server};DATABASE={Program.Settings.SqlSettings.database};Integrated Security = SSPI;";
        }
        else {
            conStr = $"SERVER={Program.Settings.SqlSettings.server};DATABASE={Program.Settings.SqlSettings.database};UID={Program.Settings.SqlSettings.userID};PWD={sqlpw}";
        }
        using (SqlConnection connection = new SqlConnection(conStr)) {
            return connection.Update(t);
        }            
    }

Akzeptierte Antwort

Schauen Sie sich vielleicht das Dapper Contrib-Paket an ?

http://dapper-tutorial.net/update



Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum