예제 #1
0
        internal static IATrineRDFDependencies GetRDFDependencies(this IUnifiedContext _)
        {
            var instance = InvokeMethod <IRelationalDatabaseFacadeDependencies>(
                typeof(RelationalDatabaseFacadeExtensions),
                DependencyMethodName,
                new object[] { _.GetDbFacade() }
                );

            return(new ATrineRDFDependencies(instance));
        }
예제 #2
0
        internal static RelationalCommandParameterObject CreateCommandParameterObject(
            this IUnifiedContext _,
            IATrineRDFDependencies dependencies,
            IReadOnlyDictionary <string, object> paramValues)
        {
            var facade = ((ATrineRDFDependencies)dependencies).Instance;

            return(new RelationalCommandParameterObject(
                       facade.RelationalConnection,
                       paramValues,
                       null,
                       (UnifiedContext)_,
                       facade.CommandLogger
                       ));
        }
예제 #3
0
 internal static IATrineDbFacadeDependencies GetDbFacadeDependencies(this IUnifiedContext _)
 => new ATrineDbFacadeDependencies(((UnifiedContext)_).GetService <IDatabaseFacadeDependencies>());
예제 #4
0
 internal static DatabaseFacade GetDbFacade(this IUnifiedContext _) => ((UnifiedContext)_).Database;
예제 #5
0
 internal static UnifiedContext ToCore(this IUnifiedContext _) => (UnifiedContext)_;
예제 #6
0
 internal static DbContext ToEECore(this IUnifiedContext _) => (UnifiedContext)_;
예제 #7
0
 /// <summary>
 /// Cast to specified type derived from IUnifiedContext
 /// </summary>
 /// <typeparam name="TContext">Target type derived from IUnifiedContext</typeparam>
 /// <param name="_">Instance to be cast</param>
 /// <returns>Object casted to the type</returns>
 internal static TContext ToType <TContext>(this IUnifiedContext _) where TContext : IUnifiedContext => (TContext)_;