Readdy Write  
0,00 €
Your View Money
Views: Count
Self 20% 0
Your Content 60% 0

Users by Links 0
u1*(Content+Views) 10% 0
Follow-Follower 0
s2*(Income) 5% 0

Count
Followers 0
Login Register as User

Windows Console App C# .Net 6 mit EntityFrameworkCore 6+ SQL Server Tabellen bearbeiten

21.02.2023 (👁8777)

Windows Console App C# .Net 6 mit EntityFrameworkCore 6+ SQL Server Tabellen bearbeiten

Mit diesem C# .Net Code kann man mit einer Konsolen-Anwendung (Windows App ohne User-Interface) Daten auf einem angebundenen SQL-Server als Service Bearbeiten.

Wichtig ist dabei, dass mit der EntityFrameworkCore die Datenabfragen Typ-Sicher und Sicher gegen SQL Injection abgerufen werden können und mit LINQ alle praktischen Abfragen vereinfacht werden.

Program.cs

 

using Database;

using Microsoft.EntityFrameworkCore;

 

namespace ConsApp_DB02

{

    internal class Program

    {

        static void Main(string[] args)

        {

            Console.WriteLine("Console With Entity Framework");

 

            string connectionstring = @"Server=.\sqlexpress;Database=codedocu_de;Trusted_Connection=True;MultipleActiveResultSets=true;Encrypt=false";

            var dbOptions = new DbContextOptionsBuilder<ApplicationDbContext>().UseSqlServer(connectionstring).Options;

 

            using (var dbContext = new ApplicationDbContext(dbOptions))

            {

                var articles = dbContext.tbl_Articles.ToList().Take(10);

                foreach (var article in articles)

                {

                    Console.WriteLine($"Title: {article.Content_Title}");

                }

            }

 

            Console.WriteLine("-DONE-");

        }

    }

}

ApplicationDbContext.cs

 

using DataModels;

using Microsoft.EntityFrameworkCore;

namespace Database

{

    public class ApplicationDbContext : DbContext

    {

        public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options): base(options) { }

        public DbSet<ArticleDbModel> tbl_Articles { get; set; }

    }

}

Und eine angebundene Tabelle

using System.ComponentModel.DataAnnotations;

using System.ComponentModel.DataAnnotations.Schema;

 

namespace DataModels

{

    [Table(name: "tbl_Articles")]

    public class ArticleDbModel

    {

        [Key]

        public string GuidArticle { get; set; } = string.Empty; //guid

 

        //[MaxLength(36)]

        //public string? GuidUser { get; set; } = string.Empty;    //guid max 36 charakters

 

        //[Required]

        //[MaxLength(255)]

        public string? Content_Title { get; set; } = string.Empty;

 

        //public string? Content_Text { get; set; } = string.Empty;

        //public string? Content_Html { get; set; } = string.Empty;

 

        //[MaxLength(450)]

        //public string? Folder { get; set; } = string.Empty;

        //[MaxLength(255)]

        //public string? Keywords { get; set; } = string.Empty;

        //public DateTime DateCreated { get; set; } = DateTime.Now;

        //public DateTime DateEdit { get; set; } = DateTime.Now;

    }

}

 

Ein Bild, das Text, Screenshot, Monitor, Bildschirm enthält.

Automatisch generierte Beschreibung

Über den Nuget Packet Manager sind angebunden

Entity Framework Core 6 und EntityFrameworkCore.SqlServer 6

Ein Bild, das Text, Screenshot, Monitor, schwarz enthält.

Automatisch generierte Beschreibung

Error

System.Data.SqlTypes.SqlNullValueException: 'Data is Null. This method or property cannot be called on Null values.'