Languages
[Edit]
PL

C# - przykład użycia LINQ to SQL wraz z Microsoft SQL Server

5 points
Created by:
Creg
9600

Celem tego artykułu jest pokazanie, jak w prosty sposób można tworzyć aplikację konsolową .NET Framwework, która komunikuje się z bazą danych przy użyciu LINQ to SQL, znajdującą się na serwerze Microsoft SQL.

 

Wykonaj kroki

  1. Utwórz projekt konsolowy typu .NET Framework (np. wersja 4.8).
    Uwaga: domyślnie tylko projekty typu .NET Framework wspierają LINQ to SQL (zamiennik dla innych wersji .NET znajdziesz tutaj).

     

  2. Dodaj do projektu referencje do System.Data.Linq:
    Dodawanie do projektu C# /.NET referencji.
    Dodawanie do projektu C# /.NET referencji.
    Dodawanie do projektu C# /.NET Framework referencji do System.Data.Linq.
    Dodawanie do projektu C# /.NET Framework referencji do System.Data.Linq.

     

  3. Umieść w projekcie 2 kasy
    1. Dodaj klasę UserEntity:
      using System;
      using System.Data.Linq.Mapping;
      
      namespace ConsoleApp
      {
          [Table(Name = "Users")]
          public class UserEntity
          {
              [Column(IsPrimaryKey = true, Name = "Id")]
              public long Id { get; set; }
      
              [Column(Name = "Name")]
              public string Name { get; set; }
      
              [Column(Name = "Role")]
              public string Role { get; set; } // ADMIN, MODERATOR, TEACHER, STUDENT
      
              [Column(Name = "CreatedAt")]
              public DateTime? CreatedAt { get; set; }
      
              [Column(Name = "RemovedAt")]
              public DateTime? RemovedAt { get; set; }
          }
      }
    2. Dodaj klasę Program:
      using System;
      using System.Data.Linq;
      using System.Linq;
      
      namespace ConsoleApp
      {
          public class Program
          {
              public static void Main()
              {
                  // Uwaga: zmień `DESKTOP-123ABC\SQLEXPRESS` na nazwę swojego serwera
                  //        ewentualnie użyj `localhost` lub `localhost\SQLEXPRESS`
      
                  string connectionString = @"Data Source=DESKTOP-123ABC\SQLEXPRESS;Initial Catalog=projectdb;Integrated Security=True";
      
                  using (DataContext dataContext = new DataContext(connectionString))
                  {
                      Table<UserEntity> users = dataContext.GetTable<UserEntity>();
      
                      IQueryable<UserEntity> query = from user in users
                                                     where user.RemovedAt.HasValue == false // user.RemovedAt == null
                                                     select user;
      
                      foreach (UserEntity user in query)
                          Console.WriteLine("{0} {1}", user.Id, user.Name);
                  }
              }
          }
      }

       

  4. Używając SQL Server Management Studio (SSMS):
    Wskazówki:
    • instalator SSMS można znaleźć tutaj,
    • instalator serwera SQL można znaleźć tutaj.
    1. Nawiąż połączenie z serwerem SQL.
    2. Utwórz nową bazę danych np. o nazwie projectdb.
    3. Utwórz nową tabelę np. o nazwie Users.
      Przykładowe zapytanie SQL:
      USE [projectdb]
      GO
      
      CREATE TABLE [dbo].[Users] (
      	[Id] BIGINT IDENTITY(1,1) NOT NULL,
      	[Name] NCHAR(50) NOT NULL,
      	[Role] NCHAR(20) NOT NULL,
      	[CreatedAt] DATETIME NOT NULL,
      	[RemovedAt] DATETIME,
      	PRIMARY KEY ([Id])
      );
      
      GO
      Przykładowa baza danych MS SQL.
      Przykładowa baza danych MS SQL.
    4. Wstaw do tabeli przykładowych użytkowników, np. używając poniższego zapytania SQL:
      USE [projectdb]
      GO
      
      SET IDENTITY_INSERT [dbo].[Users] ON;
      
      INSERT INTO [dbo].[Users]
                 ([Id], [Name], [Role], [CreatedAt], [RemovedAt])
           VALUES
                 (1, 'Jan',    'ADMIN',     CURRENT_TIMESTAMP, null),
      		   (2, 'Tomasz', 'MODERATOR', CURRENT_TIMESTAMP, null),
      		   (3, 'Marek',  'STUDENT',   CURRENT_TIMESTAMP, null);
      
      GO

       

  5. Uruchom aplikację i sprawdź, czy dostałeś następujące wyniki w konsoli:
    1 Jan
    2 Tomasz
    3 Marek

 

Zobacz również

  1. C# - adding new data to database using LINQ to SQL

  2. C# - updating data in database using LINQ to SQL

  3. C# - removing data from database using LINQ to SQL

  4. C# - przykład użycia Entity Framework wraz z Microsoft SQL Server

Referencje

  1. LINQ to SQL - Microsoft Docs
  2. Download SQL Server Management Studio (SSMS) - Microsoft Docs
  3. SQL Server Downloads - Microsoft
Donate to Dirask
Our content is created by volunteers - like Wikipedia. If you think, the things we do are good, donate us. Thanks!
Join to our subscribers to be up to date with content, news and offers.
Native Advertising
🚀
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - we help you to
solve coding problems.
Ask question.

❤️💻 🙂

Join