/// <summary>
        /// Executes the Sqlite read commands. Use at least one command!
        /// </summary>
        public static IReadFluentSyntax Sqlite(this IReadFluentSyntax syntax, Action <ISqliteReadSyntax> action)
        {
            IReadFluentSyntaxInternal internalSyntax = (IReadFluentSyntaxInternal)syntax;
            SqliteReadSyntax          readSyntax     = new(internalSyntax);

            internalSyntax.Syntaxes.Add(readSyntax);
            action(readSyntax);
            readSyntax.Commands.Count.AssertIsPositive(message: $"The {nameof(Sqlite)} action requires at least one command. E.g. '.{nameof(Sqlite)}(read => read.{nameof(ISqliteReadSyntax.UseConnectionString)}(...))'");
            return(internalSyntax);
        }
        /// <summary>
        /// Executes the Reflection read commands. Use at least one command!
        /// </summary>
        public static IReadFluentSyntax Reflection(this IReadFluentSyntax syntax, Action <IReflectionReadSyntax> action)
        {
            IReadFluentSyntaxInternal internalSyntax = (IReadFluentSyntaxInternal)syntax;
            ReflectionReadSyntax      readSyntax     = new(internalSyntax);

            internalSyntax.Syntaxes.Add(readSyntax);
            action(readSyntax);
            readSyntax.Commands.Count.AssertIsPositive(message: $"The {nameof(Reflection)} action requires at least one command. E.g. '.{nameof(Reflection)}(read => read.{nameof(IReflectionReadSyntax.FromType)}<MyModel>())'");
            return(internalSyntax);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Executes the JSON read commands. Use at least one command!
        /// </summary>
        public static IReadFluentSyntax Json(this IReadFluentSyntax syntax, Action <IJsonReadSyntax> action)
        {
            IReadFluentSyntaxInternal internalSyntax = (IReadFluentSyntaxInternal)syntax;
            JsonReadSyntax            readSyntax     = new(internalSyntax);

            internalSyntax.Syntaxes.Add(readSyntax);
            action(readSyntax);
            readSyntax.Commands.Count.AssertIsPositive(message: $"The {nameof(Json)} action requires at least one command. E.g. '.{nameof(Json)}(read => read.{nameof(IJsonReadSyntax.FromFile)}(\"my\\path\"))'");
            return(internalSyntax);
        }
        /// <summary>
        /// Executes the Tsql read commands. Use at least one command!
        /// </summary>
        // TODO: Use action instead to insert connectionString parameter here
        public static IReadFluentSyntax Tsql(this IReadFluentSyntax syntax, string connectionString, Action <ITsqlReadSyntax> action)
        {
            IReadFluentSyntaxInternal internalSyntax = (IReadFluentSyntaxInternal)syntax;
            TsqlReadSyntax            readSyntax     = new(internalSyntax, connectionString);

            internalSyntax.Syntaxes.Add(readSyntax);
            action(readSyntax);
            readSyntax.Commands.Count.AssertIsPositive(message: $"The {nameof(Tsql)} action requires at least one command. E.g. '.{nameof(Tsql)}(read => read.{nameof(ITsqlReadSyntax.FromTable)}(...))'");
            return(syntax);
        }
        /// <summary>
        /// Executes the ASP.NET read commands. Use at least one command!
        /// </summary>
        public static IReadFluentSyntax AspDotNet(this IReadFluentSyntax syntax, Action <IAspDotNetReadSyntax> action)
        {
            IReadFluentSyntaxInternal internalSyntax = (IReadFluentSyntaxInternal)syntax;
            AspDotNetReadSyntax       readSyntax     = internalSyntax.Resolver.Create <AspDotNetReadSyntax>();

            internalSyntax.Syntaxes.Add(readSyntax);
            action(readSyntax);
            readSyntax.Commands.Count.AssertIsPositive(message: $"The {nameof(AspDotNet)} action requires at least one command. E.g. '.{nameof(AspDotNet)}(read => read.{nameof(IAspDotNetReadSyntax.FromController)}<MyController>())'");
            return(internalSyntax);
        }