SqlServerBuilderExtensions Methods
AddDatabase(IResourceBuilder<SqlServerServerResource>, string, string?)Section titled AddDatabase(IResourceBuilder<SqlServerServerResource>, string, string?)extensionIResourceBuilder<SqlServerDatabaseResource>SqlServerServerResource. public static class SqlServerBuilderExtensions{ public static IResourceBuilder<SqlServerDatabaseResource> AddDatabase( this IResourceBuilder<SqlServerServerResource> builder, string name, string? databaseName = null) { // ... }}Parameters
builderIResourceBuilder<SqlServerServerResource>The SQL Server resource builders.namestringThe name of the resource. This name will be used as the connection string name when referenced in a dependency.databaseNamestring?optionalThe name of the database. If not provided, this defaults to the same value as name.Returns
IResourceBuilder<SqlServerDatabaseResource>A reference to the ApplicationModel.IResourceBuilder`1.Remarks
When adding a SqlServerDatabaseResource to your application model the resource can then be referenced by other resources using the resource name. When the dependent resource is using the extension method ResourceBuilderExtensions.WaitFor then the dependent resource will wait until the SQL Server database is available.
Note that calling SqlServerBuilderExtensions.AddDatabase will result in the database being created on the SQL Server when the server becomes ready. The database creation happens automatically as part of the resource lifecycle.
AddSqlServer(IDistributedApplicationBuilder, string, IResourceBuilder<ParameterResource>, int?)Section titled AddSqlServer(IDistributedApplicationBuilder, string, IResourceBuilder<ParameterResource>, int?)extensionIResourceBuilder<SqlServerServerResource>public static class SqlServerBuilderExtensions{ public static IResourceBuilder<SqlServerServerResource> AddSqlServer( this IDistributedApplicationBuilder builder, string name, IResourceBuilder<ParameterResource>? password = null, int? port = null) { // ... }}Parameters
builderIDistributedApplicationBuilderThe Hosting.IDistributedApplicationBuilder.namestringThe name of the resource. This name will be used as the connection string name when referenced in a dependency.passwordIResourceBuilder<ParameterResource>optionalThe parameter used to provide the administrator password for the SQL Server resource. If null a random password will be generated.portint?optionalThe host port for the SQL Server.Returns
IResourceBuilder<SqlServerServerResource>A reference to the ApplicationModel.IResourceBuilder`1.Remarks
WithCreationScript(IResourceBuilder<SqlServerDatabaseResource>, string)Section titled WithCreationScript(IResourceBuilder<SqlServerDatabaseResource>, string)extensionIResourceBuilder<SqlServerDatabaseResource>public static class SqlServerBuilderExtensions{ public static IResourceBuilder<SqlServerDatabaseResource> WithCreationScript( this IResourceBuilder<SqlServerDatabaseResource> builder, string script) { // ... }}Parameters
builderIResourceBuilder<SqlServerDatabaseResource>The builder for the SqlServerDatabaseResource.scriptstringThe SQL script used to create the database.Returns
IResourceBuilder<SqlServerDatabaseResource>A reference to the ApplicationModel.IResourceBuilder`1.Remarks
IF ( NOT EXISTS ( SELECT 1 FROM sys.databases WHERE name = @DatabaseName ) ) CREATE DATABASE [<QUOTED_DATABASE_NAME%gt;];WithDataBindMount(IResourceBuilder<SqlServerServerResource>, string, bool)Section titled WithDataBindMount(IResourceBuilder<SqlServerServerResource>, string, bool)extensionIResourceBuilder<SqlServerServerResource>public static class SqlServerBuilderExtensions{ public static IResourceBuilder<SqlServerServerResource> WithDataBindMount( this IResourceBuilder<SqlServerServerResource> builder, string source, bool isReadOnly = false) { // ... }}Parameters
builderIResourceBuilder<SqlServerServerResource>The resource builder.sourcestringThe source directory on the host to mount into the container.isReadOnlybooloptionalA flag that indicates if this is a read-only mount.Returns
IResourceBuilder<SqlServerServerResource>The ApplicationModel.IResourceBuilder`1.Remarks
source directory must be readable by the user that the container runs as. https://learn.microsoft.com/sql/linux/sql-server-linux-docker-container-configure?view=sql-server-ver16&pivots=cs1-bash#mount-a-host-directory-as-data-volume WithDataVolume(IResourceBuilder<SqlServerServerResource>, string?, bool)Section titled WithDataVolume(IResourceBuilder<SqlServerServerResource>, string?, bool)extensionIResourceBuilder<SqlServerServerResource>public static class SqlServerBuilderExtensions{ public static IResourceBuilder<SqlServerServerResource> WithDataVolume( this IResourceBuilder<SqlServerServerResource> builder, string? name = null, bool isReadOnly = false) { // ... }}Parameters
builderIResourceBuilder<SqlServerServerResource>The resource builder.namestring?optionalThe name of the volume. Defaults to an auto-generated name based on the application and resource names.isReadOnlybooloptionalA flag that indicates if this is a read-only volume.Returns
IResourceBuilder<SqlServerServerResource>The ApplicationModel.IResourceBuilder`1.WithHostPort(IResourceBuilder<SqlServerServerResource>, int?)Section titled WithHostPort(IResourceBuilder<SqlServerServerResource>, int?)extensionIResourceBuilder<SqlServerServerResource>public static class SqlServerBuilderExtensions{ public static IResourceBuilder<SqlServerServerResource> WithHostPort( this IResourceBuilder<SqlServerServerResource> builder, int? port) { // ... }}Parameters
builderIResourceBuilder<SqlServerServerResource>The resource builder.portint?The port to bind on the host. If null is used random port will be assigned.Returns
IResourceBuilder<SqlServerServerResource>The ApplicationModel.IResourceBuilder`1.WithPassword(IResourceBuilder<SqlServerServerResource>, IResourceBuilder<ParameterResource>)Section titled WithPassword(IResourceBuilder<SqlServerServerResource>, IResourceBuilder<ParameterResource>)extensionIResourceBuilder<SqlServerServerResource>public static class SqlServerBuilderExtensions{ public static IResourceBuilder<SqlServerServerResource> WithPassword( this IResourceBuilder<SqlServerServerResource> builder, IResourceBuilder<ParameterResource> password) { // ... }}Parameters
builderIResourceBuilder<SqlServerServerResource>The resource builder.passwordIResourceBuilder<ParameterResource>The parameter used to provide the password for the SqlServer resource.Returns
IResourceBuilder<SqlServerServerResource>The ApplicationModel.IResourceBuilder`1.