コード例 #1
0
        /// <summary>
        /// Registers the NHibernate stores services in the DI container and
        /// configures OpenIddict to use the NHibernate entities by default.
        /// </summary>
        /// <param name="builder">The services builder used by OpenIddict to register new services.</param>
        /// <param name="configuration">The configuration delegate used to configure the NHibernate services.</param>
        /// <remarks>This extension can be safely called multiple times.</remarks>
        /// <returns>The <see cref="OpenIddictCoreBuilder"/>.</returns>
        public static OpenIddictCoreBuilder UseNHibernate(
            [NotNull] this OpenIddictCoreBuilder builder,
            [NotNull] Action <OpenIddictNHibernateBuilder> configuration)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }

            configuration(builder.UseNHibernate());

            return(builder);
        }