/// <summary>
 /// Mark to build context connection as a PostgresSQL.
 /// <para>
 /// To load by ConnectionString in appsettings.json use the default postgressql format connection
 /// string. Otherwise, inform connection credentials.
 /// </para>
 /// </summary>
 /// <param name="builder">current builder</param>
 /// <returns>current builder</returns>
 public static ContextConnection.Builder AsPostgres([NotNull] this ContextConnection.Builder builder)
 {
     return(builder
            .AddDefaultConnectionStringOperation((b, c) => b.UseNpgsql(o => o.SetPostgresVersion(9, 6)).UseNpgsql(c))
            .AddBuildCallback(OnBuildAsPostgresCallback));
 }
 /// <summary>
 /// Mark to build context connection as a SQLite.
 /// <para>
 /// This context can not be loaded by ConnectionString,
 /// always, inform connection credentials, otherwise will be created a memory database.
 /// </para>
 /// </summary>
 /// <param name="builder">current builder</param>
 /// <returns>current builder</returns>
 public static ContextConnection.Builder AsSqlite([NotNull] this ContextConnection.Builder builder)
 {
     return(builder
            .AddDefaultConnectionStringOperation((b, c) => b.UseSqlite(c))
            .AddBuildCallback(OnBuildAsSqliteCallback));
 }