PostgreSQL. Npgsql - Сценарии 

Page / - Изменено Alexandr Fokin в 2024/02/24 15:13 

Сценарии 
Изменено Alexandr Fokin
в 2024/02/24 15:13

Оглавление

 	 	
JSON тип данных	 	Can JSONB GIN indexes be specified in CodeFirst EntityFramework with NPGSQL?
https://stackoverflow.com/questions/54618858/can-jsonb-gin-indexes-be-specified-in-codefirst-entityframework-with-npgsql	
Тип сущности	JSON Mapping
https://www.npgsql.org/efcore/mapping/json.html?tabs=data-annotations%2Cpoco
System. Text. Json
Позволяет использовать JsonDocument и JsonElement.	

Parameters	public static class QueryParameterExtensions
{
   public static NpgsqlParameter StructToDbParameter<T>(
       this T value,
       string name,
        NpgsqlDbType type
        )
       where T : struct
    {
       return new NpgsqlParameter<T>(name, type) { TypedValue = value };
    }

   public static NpgsqlParameter StructToDbParameter<T>(
       this T? value,
       string name,
        NpgsqlDbType type
        )
       where T : struct
    {
       if (!value.HasValue)
        {
           return new NpgsqlParameter(name, type) { Value = DBNull.Value };
        }

       return new NpgsqlParameter<T>(name, type) { TypedValue = value.Value };
    }

   public static NpgsqlParameter ClassToDbParameter<T>(
       this T value,
       string name,
        NpgsqlDbType type
        )
       where T : class
    {
       if (value == null)
        {
           return new NpgsqlParameter(name, type) { Value = DBNull.Value };
        }

       return new NpgsqlParameter<T>(name, type) { TypedValue = value };
    }
}