» » » » Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

На нашем литературном портале можно бесплатно читать книгу Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю, Троелсен Эндрю . Жанр: Базы данных. Онлайн библиотека дает возможность прочитать весь текст и даже без регистрации и СМС подтверждения на нашем литературном портале litmir.org.
Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
Название: Язык программирования C#9 и платформа .NET5
Дата добавления: 22 август 2024
Количество просмотров: 236
Читать онлайн

Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних просмотр данного контента СТРОГО ЗАПРЕЩЕН! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту readbookfedya@gmail.com для удаления материала

Язык программирования C#9 и платформа .NET5 читать книгу онлайн

Язык программирования C#9 и платформа .NET5 - читать бесплатно онлайн , автор Троелсен Эндрю

В 10-м издании книги описаны новейшие возможности языка C# 9 и .NET 5 вместе с подробным "закулисным" обсуждением, призванным расширить навыки критического мышления разработчиков, когда речь идет об их ремесле.

Книга охватывает ASP.NET Core, Entity Framework Core и многое другое наряду с последними обновлениями унифицированной платформы .NET, начиная с улучшений показателей производительности настольных приложений Windows в .NET 5 и обновления инструментария XAML и заканчивая расширенным рассмотрением файлов данных и способов обработки данных.

Все примеры кода были переписаны с учетом возможностей последнего выпуска C# 9.

Перейти на страницу:

• DbCommand — абстрактный базовый класс для всех классов команд;

• DbConnection — абстрактный базовый класс для всех классов подключений;

• DbDataAdapter — абстрактный базовый класс для всех классов адаптеров данных;

• DbDataReader — абстрактный базовый класс для всех классов чтения данных;

• DbParameter — абстрактный базовый класс для всех классов параметров;

• DbTransaction — абстрактный базовый класс для всех классов транзакций.

Каждый поставщик данных, совместимый с .NET Core, содержит класс, производный от System.Data.Common.DbProviderFactory. В этом базовом классе определено несколько методов, которые извлекают объекты данных, специфичные для поставщика. Вот члены класса DbProviderFactory:

public abstract class DbProviderFactory

{

  public virtual bool CanCreateDataAdapter { get;};

  public virtual bool CanCreateCommandBuilder { get;};

  public virtual DbCommand CreateCommand();

  public virtual DbCommandBuilder CreateCommandBuilder();

  public virtual DbConnection CreateConnection();

  public virtual DbConnectionStringBuilder CreateConnectionStringBuilder();

  public virtual DbDataAdapter CreateDataAdapter();

  public virtual DbParameter CreateParameter();

  public virtual DbDataSourceEnumerator CreateDataSourceEnumerator();

}

Чтобы получить производный от DbProviderFactory тип для вашего поставщика данных, каждый поставщик предоставляет статическое свойство, используемое для возвращения корректного типа. Для возвращения версии SQL Server поставщика DbProviderFactory применяйте следующий код:

// Получить фабрику для поставщика данных SQL.

DbProviderFactory sqlFactory =

    Microsoft.Data.SqlClient.SqlClientFactory.Instance;

Чтобы сделать программу более универсальной, вы можете создать фабрику DbProviderFactory, которая возвращает конкретную разновидность DbProviderFactory на основе настройки в файле appsettings.json для приложения. Вскоре вы узнаете, как это делать, а пока после получения фабрики для поставщика данных можно получить связанные с ним объекты данных (например, объекты подключений, команд и чтения данных).

Полный пример фабрики поставщиков данных

В качестве завершенного примера создайте новый проект консольного приложения C# (по имени DataProviderFactory), которое выводит инвентарный список автомобилей из базы данных AutoLot. В начальном примере логика доступа к данным будет жестко закодирована прямо в сборке DataProviderFactory.exe (чтобы излишне не усложнять код). По мере изучения материалов настоящей главы вы узнаете более эффективные способы решения задачи.

(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})

Начните с добавления нового элемента ItemGroup и пакетов Microsoft.Extensions.Configuration.Json, System.Data.Common, System.Data.Odbc, System.Data.OleDb и Microsoft.Data.SqlClient в файл проекта:

dotnet add DataProviderFactory package Microsoft.Data.SqlClient

dotnet add DataProviderFactory package System.Data.Common

dotnet add DataProviderFactory package System.Data.Odbc

dotnet add DataProviderFactory package System.Data.OleDb

dotnet add DataProviderFactory package Microsoft.Extensions.Configuration.Json

Определите символ условной компиляции PC (в случае применения Windows):

<PropertyGroup>

  <DefineConstants>PC</DefineConstants>

</PropertyGroup>

Далее добавьте новый файл по имени DataProviderEnum.cs и модифицируйте его код, как показано ниже:

namespace DataProviderFactory

{

  // OleDb поддерживается только в Windows, но не в .NET Core.

  enum DataProviderEnum

  {

    SqlServer,

 #if PC

    OleDb,

#endif

    Odbc

  }

}

Добавьте в проект новый файл JSON по имени appsettings.json и измените его содержимое следующим образом (обновите строки подключения в соответствии с имеющейся средой):

{

  "ProviderName": "SqlServer",

  //"ProviderName": "OleDb",

  //"ProviderName": "Odbc",

  "SqlServer": {

    // Для localdb используйте @"Data Source=(localdb)

    // mssqllocaldb;Integrated Security=true;

     Initial Catalog=AutoLot"

     "ConnectionString": "Data Source=.,5433;User Id=sa;Password=P@ssw0rd;Initial

       Catalog=AutoLot"

  },

  "Odbc": {

Перейти на страницу:
Комментариев (0)