public void Changing_RowNumberPagingEnabled_when_UseInternalServiceProvider_throws()
        {
            using (var context = new ChangedRowNumberContext(rowNumberPagingEnabled: false, setInternalServiceProvider: true))
            {
                _ = context.Model;
            }

            using (var context = new ChangedRowNumberContext(rowNumberPagingEnabled: true, setInternalServiceProvider: true))
            {
                Assert.Equal(
                    CoreStrings.SingletonOptionChanged(
                        nameof(SqlServerDbContextOptionsBuilder.UseRowNumberForPaging),
                        nameof(DbContextOptionsBuilder.UseInternalServiceProvider)),
                    Assert.Throws <InvalidOperationException>(() => context.Model).Message);
            }
        }
Пример #2
0
        public void Changing_RowNumberPagingEnabled_causes_new_service_provider_to_be_built()
        {
            ISqlServerOptions singletonOptions;

            using (var context = new ChangedRowNumberContext(rowNumberPagingEnabled: false, setInternalServiceProvider: false))
            {
                _ = context.Model;
                singletonOptions = context.GetService <ISqlServerOptions>();
                Assert.False(singletonOptions.RowNumberPagingEnabled);
            }

            using (var context = new ChangedRowNumberContext(rowNumberPagingEnabled: true, setInternalServiceProvider: false))
            {
                _ = context.Model;
                var newOptions = context.GetService <ISqlServerOptions>();
                Assert.True(newOptions.RowNumberPagingEnabled);
                Assert.NotSame(newOptions, singletonOptions);
            }
        }