3 instantiations of ReferenceExpression
Aspire.Hosting (3)
ApplicationModel\ReferenceExpression.cs (3)
232return new(format, valueProviders, manifestExpressions, stringFormats); 258return new ReferenceExpression(condition, matchValue, whenTrue, whenFalse); 437new(_builder.ToString(), [.. _valueProviders], [.. _manifestExpressions], [.. _stringFormats]);
1714 references to ReferenceExpression
Aspire.Hosting (181)
ApplicationModel\CertificateTrustConfigurationCallbackAnnotation.cs (6)
79public required ReferenceExpression CertificateBundlePath { get; init; } 84public required ReferenceExpression CertificateDirectoriesPath { get; init; } 100/// <returns>A <see cref="ReferenceExpression"/> that can be used to reference the custom bundle.</returns> 125public ReferenceExpression CreateCustomBundle(Func<X509Certificate2Collection, CancellationToken, Task<byte[]>> bundleGenerator) 133var reference = ReferenceExpression.Create($"{bundleFilename}");
ApplicationModel\CertificateTrustExecutionConfigurationGatherer.cs (2)
164public required ReferenceExpression CertificateBundlePath { get; init; } 169public required ReferenceExpression CertificateDirectoriesPath { get; init; }
ApplicationModel\CommandLineArgsEditor.cs (1)
31typeof(ReferenceExpression),
ApplicationModel\ConnectionPropertyAnnotation.cs (2)
18public ConnectionPropertyAnnotation(string name, ReferenceExpression referenceExpression) 32public ReferenceExpression Value { get; }
ApplicationModel\ConnectionStringReference.cs (3)
13private readonly ReferenceExpression? _connectionStringExpression; 21ReferenceExpression? connectionStringExpression) : this(resource, optional) 53public ReferenceExpression ConnectionStringExpression => _connectionStringExpression ?? Resource.ConnectionStringExpression;
ApplicationModel\ContainerFileSystemCallbackAnnotation.cs (4)
456public ReferenceExpression CertificatePath { get; init; } = null!; 462public ReferenceExpression KeyPath { get; init; } = null!; 468public ReferenceExpression CertificateWithKeyPath { get; init; } = null!; 474public ReferenceExpression PfxPath { get; init; } = null!;
ApplicationModel\ContainerRegistryResource.cs (9)
38private readonly ReferenceExpression _registryName; 39private readonly ReferenceExpression _endpoint; 40private readonly ReferenceExpression? _repository; 49public ContainerRegistryResource(string name, ReferenceExpression endpoint, ReferenceExpression? repository = null) 54_registryName = ReferenceExpression.Create($"{name}"); 60ReferenceExpression IContainerRegistry.Name => _registryName; 63ReferenceExpression IContainerRegistry.Endpoint => _endpoint; 66ReferenceExpression? IContainerRegistry.Repository => _repository;
ApplicationModel\EndpointReference.cs (7)
166/// Creates a conditional <see cref="ReferenceExpression"/> that resolves to <paramref name="enabledValue"/> when 173/// safe to embed in a <see cref="ReferenceExpression"/> that is built before TLS is configured 179/// <returns>A conditional <see cref="ReferenceExpression"/> whose value tracks the TLS state of this endpoint.</returns> 181public ReferenceExpression GetTlsValue(ReferenceExpression enabledValue, ReferenceExpression disabledValue) 183return ReferenceExpression.CreateConditional(
ApplicationModel\EnvironmentCallbackContext.cs (1)
36[AspireUnion(typeof(string), typeof(ReferenceExpression))]
ApplicationModel\EnvironmentEditor.cs (1)
24typeof(ReferenceExpression),
ApplicationModel\ExpressionResolver.cs (3)
11async Task<ResolvedValue> EvalExpressionAsync(ReferenceExpression expr, ValueProviderContext context) 16var branch = string.Equals(conditionResult.Value, expr.MatchValue, StringComparison.OrdinalIgnoreCase) ? expr.WhenTrue! : expr.WhenFalse!; 83ReferenceExpression ex => await EvalExpressionAsync(ex, context).ConfigureAwait(false),
ApplicationModel\HttpsCertificateConfigurationCallbackAnnotaion.cs (4)
85public required ReferenceExpression CertificatePath { get; init; } 91public required ReferenceExpression KeyPath { get; init; } 97public required ReferenceExpression CertificateWithKeyPath { get; init; } 103public required ReferenceExpression PfxPath { get; init; }
ApplicationModel\HttpsCertificateExecutionConfigurationGatherer.cs (15)
94private ReferenceExpression? _keyPathReference; 97private ReferenceExpression? _certificateWithKeyPathReference; 100private ReferenceExpression? _pfxPathReference; 111public required ReferenceExpression KeyPathReference 120_keyPathReference = ReferenceExpression.Create($"{_trackedKeyPathReference}"); 132public required ReferenceExpression CertificateWithKeyPathReference 141_certificateWithKeyPathReference = ReferenceExpression.Create($"{_trackedCertificateWithKeyPathReference}"); 153public required ReferenceExpression PfxPathReference 162_pfxPathReference = ReferenceExpression.Create($"{_trackedPfxPathReference}"); 178private readonly ReferenceExpression _reference; 180public TrackedReference(ReferenceExpression reference) 209public required ReferenceExpression CertificatePath { get; init; } 215public required ReferenceExpression KeyPath { get; init; } 221public required ReferenceExpression CertificateWithKeyPath { get; init; } 227public required ReferenceExpression PfxPath { get; init; }
ApplicationModel\IComputeEnvironmentResource.cs (16)
15/// Gets a <see cref="ReferenceExpression"/> representing the host address or host name for the specified <see cref="EndpointReference"/>. 18/// <returns>A <see cref="ReferenceExpression"/> representing the host address or host name (not a full URL).</returns> 23ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) => throw new NotImplementedException(); 26/// Gets a <see cref="ReferenceExpression"/> representing a deployed endpoint property for the specified <see cref="EndpointReferenceExpression"/>. 29/// <returns>A <see cref="ReferenceExpression"/> representing the deployed endpoint property.</returns> 32/// <see cref="ReferenceExpression"/> instead of being resolved from a local endpoint allocation. 40ReferenceExpression GetEndpointPropertyExpression(EndpointReferenceExpression endpointReferenceExpression) 49var host = new Lazy<ReferenceExpression>(() => GetHostAddressExpression(endpointReference)); 54? ReferenceExpression.Create($"{scheme}://{host.Value}") 55: ReferenceExpression.Create($"{scheme}://{host.Value}:{port.ToString(CultureInfo.InvariantCulture)}"), 57EndpointProperty.Port => ReferenceExpression.Create($"{port.ToString(CultureInfo.InvariantCulture)}"), 59? ReferenceExpression.Create($"{targetPort.ToString(CultureInfo.InvariantCulture)}") 60: ReferenceExpression.Create($"{new ContainerPortReference(endpointReference.Resource)}"), 61EndpointProperty.Scheme => ReferenceExpression.Create($"{scheme}"), 62EndpointProperty.HostAndPort => ReferenceExpression.Create($"{host.Value}:{port.ToString(CultureInfo.InvariantCulture)}"), 63EndpointProperty.TlsEnabled => ReferenceExpression.Create($"{(endpoint.TlsEnabled ? bool.TrueString : bool.FalseString)}"),
ApplicationModel\IContainerRegistry.cs (3)
14ReferenceExpression Name { get; } 23ReferenceExpression Endpoint { get; } 40ReferenceExpression? Repository => null;
ApplicationModel\IResourceWithConnectionString.cs (3)
29public ReferenceExpression ConnectionStringExpression { get; } 42/// is its corresponding <see cref="ReferenceExpression"/>. The collection is empty if there are no connection 44IEnumerable<KeyValuePair<string, ReferenceExpression>> GetConnectionProperties() => [];
ApplicationModel\ReferenceExpression.cs (33)
18/// A <see cref="ReferenceExpression"/> operates in one of two modes: 37public static readonly ReferenceExpression Empty = Create(string.Empty, [], [], []); 43private readonly ReferenceExpression? _whenTrue; 44private readonly ReferenceExpression? _whenFalse; 60private ReferenceExpression(IValueProvider condition, string matchValue, ReferenceExpression whenTrue, ReferenceExpression whenFalse) 118public ReferenceExpression? WhenTrue => _whenTrue; 124public ReferenceExpression? WhenFalse => _whenFalse; 194var branch = string.Equals(conditionValue, _matchValue, StringComparison.OrdinalIgnoreCase) ? _whenTrue! : _whenFalse!; 230internal static ReferenceExpression Create(string format, IValueProvider[] valueProviders, string[] manifestExpressions, string?[] stringFormats) 236/// Creates a new instance of <see cref="ReferenceExpression"/> with the specified format and value providers. 239/// <returns>A new instance of <see cref="ReferenceExpression"/> with the specified format and value providers.</returns> 240public static ReferenceExpression Create(in ExpressionInterpolatedStringHandler handler) 246/// Creates a conditional <see cref="ReferenceExpression"/> that selects between two branch expressions 255/// <returns>A new conditional <see cref="ReferenceExpression"/>.</returns> 256public static ReferenceExpression CreateConditional(IValueProvider condition, string matchValue, ReferenceExpression whenTrue, ReferenceExpression whenFalse) 261private static string GenerateConditionalName(IValueProvider condition, string matchValue, ReferenceExpression whenTrue, ReferenceExpression whenFalse) 280private static string ComputeConditionalHash(IValueProvider condition, ReferenceExpression whenTrue, ReferenceExpression whenFalse, string matchValue) 387public void AppendFormatted(ReferenceExpression valueProvider, string format) 436internal readonly ReferenceExpression GetExpression() => 482/// A builder for creating <see cref="ReferenceExpression"/> instances. 514_builder.Append(ReferenceExpression.ExpressionInterpolatedStringHandler.EscapeUnescapedBraces(value)); 542_builder.Append(ReferenceExpression.ExpressionInterpolatedStringHandler.EscapeUnescapedBraces(value)); 563public void AppendFormatted(ReferenceExpression valueProvider, string format) 618/// Builds the <see cref="ReferenceExpression"/>. 622public ReferenceExpression Build() => 623ReferenceExpression.Create(_builder.ToString(), [.. _valueProviders], [.. _manifestExpressions], [.. _stringFormats]); 631/// <param name="builder">The builder that will be used to create the <see cref="ReferenceExpression"/>.</param> 672public void AppendFormatted(ReferenceExpression valueProvider, string format)
ApplicationModel\ResourceUrlsEditor.cs (4)
22public async Task Add([AspireUnion(typeof(string), typeof(ReferenceExpression))] object url, string? displayText = null) 31case ReferenceExpression referenceExpression: 53public async Task AddForEndpoint(EndpointReference endpoint, [AspireUnion(typeof(string), typeof(ReferenceExpression))] object url, string? displayText = null) 63case ReferenceExpression referenceExpression:
Ats\AtsTypeMappings.cs (1)
30[assembly: AspireExport(typeof(ReferenceExpression))]
ConnectionPropertiesExtensions.cs (3)
20public static IEnumerable<KeyValuePair<string, ReferenceExpression>> CombineProperties(this IResourceWithConnectionString source, IEnumerable<KeyValuePair<string, ReferenceExpression>> additional) 25var dict = new Dictionary<string, ReferenceExpression>(StringComparer.OrdinalIgnoreCase);
ConnectionStringBuilderExtensions.cs (1)
41public static IResourceBuilder<ConnectionStringResource> AddConnectionString(this IDistributedApplicationBuilder builder, [ResourceName] string name, ReferenceExpression connectionStringExpression)
ConnectionStringParameterResource.cs (2)
23public ReferenceExpression ConnectionStringExpression => 24ReferenceExpression.Create($"{this}");
ConnectionStringResource.cs (2)
13public sealed class ConnectionStringResource(string name, ReferenceExpression connectionStringExpression) : Resource(name), IResourceWithConnectionString, IResourceWithWaitSupport 18public ReferenceExpression ConnectionStringExpression => connectionStringExpression;
ContainerRegistryResourceBuilderExtensions.cs (8)
49var endpointExpression = ReferenceExpression.Create($"{endpoint.Resource}"); 50var repositoryExpression = repository is not null 51? ReferenceExpression.Create($"{repository.Resource}") 102var endpointExpression = ReferenceExpression.Create($"{endpoint}"); 103var repositoryExpression = repository is not null 104? ReferenceExpression.Create($"{repository}")
Dashboard\DashboardEventHandlers.cs (2)
662static ReferenceExpression GetTargetUrlExpression(EndpointReference e) => 663ReferenceExpression.Create($"{e.Property(EndpointProperty.Scheme)}://{e.EndpointAnnotation.TargetHost}:{e.Property(EndpointProperty.TargetPort)}");
Dcp\ContainerCreator.cs (7)
398CertificateBundlePath = ReferenceExpression.Create($"{certificatesDestination}/cert.pem"), 399CertificateDirectoriesPath = ReferenceExpression.Create($"{string.Join(':', dirs)}"), 406CertificatePath = ReferenceExpression.Create($"{serverAuthCertificatesBasePath}/{cert.Thumbprint}.crt"), 407KeyPath = ReferenceExpression.Create($"{serverAuthCertificatesBasePath}/{cert.Thumbprint}.key"), 408CertificateWithKeyPath = ReferenceExpression.Create($"{serverAuthCertificatesBasePath}/{cert.Thumbprint}.pem"), 409PfxPath = ReferenceExpression.Create($"{serverAuthCertificatesBasePath}/{cert.Thumbprint}.pfx"), 459CertificatePath = ReferenceExpression.Create($"{serverAuthCertificatesBasePath}/{thumbprint}.crt"),
Dcp\ExecutableConfigurationResolver.cs (6)
72CertificateBundlePath = ReferenceExpression.Create($"{bundleOutputPath}"), 73CertificateDirectoriesPath = ReferenceExpression.Create($"{string.Join(Path.PathSeparator, directories)}"), 79CertificatePath = ReferenceExpression.Create($"{Path.Join(baseServerAuthOutputPath, $"{certificate.Thumbprint}.crt")}"), 80KeyPath = ReferenceExpression.Create($"{Path.Join(baseServerAuthOutputPath, $"{certificate.Thumbprint}.key")}"), 81CertificateWithKeyPath = ReferenceExpression.Create($"{Path.Join(baseServerAuthOutputPath, $"{certificate.Thumbprint}.pem")}"), 82PfxPath = ReferenceExpression.Create($"{Path.Join(baseServerAuthOutputPath, $"{certificate.Thumbprint}.pfx")}"),
ExternalServiceBuilderExtensions.cs (1)
120resourceBuilder.WithUrl(ReferenceExpression.Create($"{resource.UrlParameter}"));
ParameterResourceBuilderExtensions.cs (2)
373[AspireUnion(typeof(string), typeof(ReferenceExpression))] object? environmentVariableNameOrExpression = null) 382ReferenceExpression connectionStringExpression => ConnectionStringBuilderExtensions.AddConnectionString(builder, name, connectionStringExpression),
ProjectResourceBuilderExtensions.cs (2)
1243var url = ReferenceExpression.Create($"{e.EndpointAnnotation.UriScheme}://{host}:{e.Property(EndpointProperty.TargetPort)}");
Publishing\ManifestPublishingContext.cs (9)
51private readonly Dictionary<string, ReferenceExpression> _conditionalExpressions = new(StringComparers.ResourceName); 683if (value is ReferenceExpression referenceExpression) 717ReferenceExpression referenceExpression => GetManifestExpression(referenceExpression), 722private string GetManifestExpression(ReferenceExpression referenceExpression) 745private void RegisterFormattedParameters(ReferenceExpression referenceExpression) 770private void RegisterConditionalExpressions(ReferenceExpression referenceExpression) 780if (provider is ReferenceExpression { IsConditional: true, Name: string nestedName } conditional) 903ReferenceExpression referenceExpression when TryGetSingleParameterProvider(referenceExpression, out var parameter) => RegisterFormattedParameter(parameter, format), 908private static bool TryGetSingleParameterProvider(ReferenceExpression referenceExpression, out ParameterResource parameter)
ResourceBuilderExtensions.cs (18)
261typeof(ReferenceExpression), 277ReferenceExpression expression => builder.WithEnvironment(name, expression), 300public static IResourceBuilder<T> WithEnvironment<T>(this IResourceBuilder<T> builder, string name, in ReferenceExpression.ExpressionInterpolatedStringHandler value) 306var expression = value.GetExpression(); 340public static IResourceBuilder<T> WithEnvironment<T>(this IResourceBuilder<T> builder, string name, ReferenceExpression value) 617public static IResourceBuilder<T> WithConnectionProperty<T>(this IResourceBuilder<T> builder, string name, ReferenceExpression value) where T : IResourceWithConnectionString 640return builder.WithAnnotation(new ConnectionPropertyAnnotation(name, ReferenceExpression.Create($"{value}"))); 655[AspireUnion(typeof(string), typeof(ReferenceExpression))] object value) where T : IResourceWithConnectionString 664ReferenceExpression referenceExpression => builder.WithConnectionProperty(name, referenceExpression), 1481public static ReferenceExpression GetConnectionProperty(this IResourceWithConnectionString resource, string key) 1491return ReferenceExpression.Empty; 2385[AspireUnion(typeof(string), typeof(ReferenceExpression))] object url, 2395ReferenceExpression expression => builder.WithUrl(expression, displayText), 2414public static IResourceBuilder<T> WithUrl<T>(this IResourceBuilder<T> builder, in ReferenceExpression.ExpressionInterpolatedStringHandler url, string? displayText = null) 2419var expression = url.GetExpression(); 2429/// <param name="url">A <see cref="ReferenceExpression"/> that will produce the URL.</param> 2437public static IResourceBuilder<T> WithUrl<T>(this IResourceBuilder<T> builder, ReferenceExpression url, string? displayText = null) 4913ReferenceExpression expression) where T : IResource
Aspire.Hosting.Azure (13)
AzureBicepResourceExtensions.cs (3)
152typeof(ReferenceExpression), 165ReferenceExpression expression => builder.WithParameter(name, expression), 328public static IResourceBuilder<T> WithParameter<T>(this IResourceBuilder<T> builder, string name, ReferenceExpression value)
AzureProvisioningResourceExtensions.cs (2)
255/// The <see cref="ReferenceExpression"/> that represents the value to use for the <see cref="ProvisioningParameter"/>. 266public static ProvisioningParameter AsProvisioningParameter(this ReferenceExpression expression, AzureResourceInfrastructure infrastructure, string parameterName)
AzurePublishingContext.cs (5)
247FormattableString EvalExpr(ReferenceExpression expr) 259object EvalConditionalExpr(ReferenceExpression expr) 266var branch = string.Equals(staticCondition, expr.MatchValue, StringComparison.OrdinalIgnoreCase) 290ReferenceExpression { IsConditional: true } re => EvalConditionalExpr(re), 291ReferenceExpression re => EvalExpr(re),
DelegatedSubnetAnnotation.cs (2)
14public sealed class DelegatedSubnetAnnotation(ReferenceExpression subnetId) : IResourceAnnotation 19public ReferenceExpression SubnetId { get; } = subnetId;
IAzureContainerRegistry.cs (1)
17ReferenceExpression ManagedIdentityId { get; }
Aspire.Hosting.Azure.AppConfiguration (3)
AzureAppConfigurationResource.cs (3)
46public ReferenceExpression ConnectionStringExpression => 48? ReferenceExpression.Create($"Endpoint={EmulatorEndpoint.Property(EndpointProperty.Url)};Id=anonymous;Secret=abcdefghijklmnopqrstuvwxyz1234567890;Anonymous=True") 49: ReferenceExpression.Create($"{Endpoint}");
Aspire.Hosting.Azure.AppContainers (24)
AzureContainerAppEnvironmentResource.cs (16)
337ReferenceExpression IContainerRegistry.Name => GetContainerRegistry()?.Name ?? ReferenceExpression.Create($"{ContainerRegistryName}"); 339ReferenceExpression IContainerRegistry.Endpoint => GetContainerRegistry()?.Endpoint ?? ReferenceExpression.Create($"{ContainerRegistryUrl}"); 382ReferenceExpression IAzureContainerRegistry.ManagedIdentityId => ReferenceExpression.Create($"{ContainerRegistryManagedIdentityId}"); 387public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) 412public ReferenceExpression GetEndpointPropertyExpression(EndpointReferenceExpression endpointReferenceExpression) 422var host = GetHostAddressExpression(endpointReference); 426EndpointProperty.Url => ReferenceExpression.Create($"{scheme}://{host}"), 428EndpointProperty.Port => ReferenceExpression.Create($"{port.ToString(CultureInfo.InvariantCulture)}"), 430? ReferenceExpression.Create($"{targetPort.ToString(CultureInfo.InvariantCulture)}") 431: ReferenceExpression.Create($"{new ContainerPortReference(endpointReference.Resource)}"), 432EndpointProperty.Scheme => ReferenceExpression.Create($"{scheme}"), 433EndpointProperty.HostAndPort => ReferenceExpression.Create($"{host}:{port.ToString(CultureInfo.InvariantCulture)}"), 434EndpointProperty.TlsEnabled => ReferenceExpression.Create($"{(tlsEnabled ? bool.TrueString : bool.FalseString)}"),
BaseContainerAppContext.cs (4)
242ep, [_containerAppEnvironmentContext.Environment], out var crossExpr)) 309epExpr, [_containerAppEnvironmentContext.Environment], out var crossExpr)) 332if (value is ReferenceExpression expr) 349var branch = string.Equals(staticCondition, expr.MatchValue, StringComparison.OrdinalIgnoreCase)
src\Shared\ComputeEnvironmentEndpointResolver.cs (4)
26/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint's URL by 46[NotNullWhen(true)] out ReferenceExpression? expression) 57/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint property by 77[NotNullWhen(true)] out ReferenceExpression? expression)
Aspire.Hosting.Azure.ApplicationInsights (2)
AzureApplicationInsightsResource.cs (2)
32public ReferenceExpression ConnectionStringExpression => 33ReferenceExpression.Create($"{ConnectionString}");
Aspire.Hosting.Azure.AppService (24)
AzureAppServiceEnvironmentResource.cs (16)
459ReferenceExpression IContainerRegistry.Name => GetContainerRegistry()?.Name ?? ReferenceExpression.Create($"{ContainerRegistryName}"); 461ReferenceExpression IContainerRegistry.Endpoint => GetContainerRegistry()?.Endpoint ?? ReferenceExpression.Create($"{ContainerRegistryUrl}"); 503ReferenceExpression IAzureContainerRegistry.ManagedIdentityId => ReferenceExpression.Create($"{ContainerRegistryManagedIdentityId}"); 508public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) 511return ReferenceExpression.Create($"{resource.Name.ToLowerInvariant()}-{WebSiteSuffix}.azurewebsites.net"); 516public ReferenceExpression GetEndpointPropertyExpression(EndpointReferenceExpression endpointReferenceExpression) 526var host = GetHostAddressExpression(endpointReference); 530EndpointProperty.Url => ReferenceExpression.Create($"{scheme}://{host}"), 532EndpointProperty.Port => ReferenceExpression.Create($"{port.ToString(CultureInfo.InvariantCulture)}"), 534? ReferenceExpression.Create($"{targetPort.ToString(CultureInfo.InvariantCulture)}") 535: ReferenceExpression.Create($"{new ContainerPortReference(endpointReference.Resource)}"), 536EndpointProperty.Scheme => ReferenceExpression.Create($"{scheme}"), 538EndpointProperty.TlsEnabled => ReferenceExpression.Create($"{(tlsEnabled ? bool.TrueString : bool.FalseString)}"),
AzureAppServiceWebsiteContext.cs (4)
208ep, [environmentContext.Environment], out var crossExpr)) 260epExpr, [environmentContext.Environment], out var crossExpr)) 271if (value is ReferenceExpression expr) 288var branch = string.Equals(staticCondition, expr.MatchValue, StringComparison.OrdinalIgnoreCase)
src\Shared\ComputeEnvironmentEndpointResolver.cs (4)
26/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint's URL by 46[NotNullWhen(true)] out ReferenceExpression? expression) 57/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint property by 77[NotNullWhen(true)] out ReferenceExpression? expression)
Aspire.Hosting.Azure.CognitiveServices (10)
AzureOpenAIDeploymentResource.cs (3)
105public ReferenceExpression ConnectionStringExpression => Parent.GetConnectionString(DeploymentName); 107IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 114yield return new("ModelName", ReferenceExpression.Create($"{DeploymentName}"));
AzureOpenAIResource.cs (7)
52public ReferenceExpression UriExpression => 53ReferenceExpression.Create($"{Endpoint}"); 58public ReferenceExpression ConnectionStringExpression => 59ReferenceExpression.Create($"{ConnectionString}"); 61internal ReferenceExpression GetConnectionString(string deploymentName) => 62ReferenceExpression.Create($"{ConnectionString};Deployment={deploymentName}"); 118IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
Aspire.Hosting.Azure.ContainerRegistry (4)
AzureContainerRegistryResource.cs (4)
66ReferenceExpression IContainerRegistry.Name => ReferenceExpression.Create($"{NameOutputReference}"); 69ReferenceExpression IContainerRegistry.Endpoint => ReferenceExpression.Create($"{RegistryEndpoint}");
Aspire.Hosting.Azure.CosmosDB (22)
AzureCosmosDBContainerResource.cs (3)
113public ReferenceExpression ConnectionStringExpression => 139IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 146yield return new("ContainerName", ReferenceExpression.Create($"{ContainerName}"));
AzureCosmosDBDatabaseResource.cs (3)
39public ReferenceExpression ConnectionStringExpression => 63IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 70yield return new("DatabaseName", ReferenceExpression.Create($"{DatabaseName}"));
AzureCosmosDBEmulatorConnectionString.cs (3)
11public static ReferenceExpression Create(EndpointReference endpoint, bool isVNext) => 13? ReferenceExpression.Create($"AccountKey={CosmosConstants.EmulatorAccountKey};AccountEndpoint={endpoint.Property(EndpointProperty.Url)}") 14: ReferenceExpression.Create($"AccountKey={CosmosConstants.EmulatorAccountKey};AccountEndpoint=https://{endpoint.Property(EndpointProperty.IPV4Host)}:{endpoint.Property(EndpointProperty.Port)};DisableServerCertificateValidation=True;");
AzureCosmosDBResource.cs (13)
105public ReferenceExpression UriExpression => 107ReferenceExpression.Create($"{EmulatorEndpoint.Property(EndpointProperty.Url)}") : 108ReferenceExpression.Create($"{ConnectionStringOutput}"); 116public ReferenceExpression? AccountKey => 118ReferenceExpression.Create($"{CosmosConstants.EmulatorAccountKey}") : 120ReferenceExpression.Create($"{PrimaryAccessKeySecretOutput}") : 126public ReferenceExpression ConnectionStringExpression => 130ReferenceExpression.Create($"{ConnectionStringSecretOutput}") : 131ReferenceExpression.Create($"{ConnectionStringOutput}"); 145internal void SetConnectionString(IDictionary<string, object> target, string connectionName, ReferenceExpression connectionStringExpression) 208internal ReferenceExpression GetChildConnectionString(string childResourceName, string? databaseName = null, string? containerName = null) 252IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 254yield return new("Uri", ReferenceExpression.Create($"{UriExpression}"));
Aspire.Hosting.Azure.EntraId (16)
EntraIdApiAccess.cs (1)
107/// <param name="Scopes">The scopes to request: each a string or a <see cref="ApplicationModel.ReferenceExpression"/>.</param>
EntraIdApplicationResource.cs (4)
831public ReferenceExpression GetScopeUri(string scopeName) 847internal ReferenceExpression CreateScopeValue(string scope) => ApplicationIdUriValue switch 849string uri => ReferenceExpression.Create($"{EntraIdApi.CreateScope(uri, scope)}"), 850BicepOutputReference output => ReferenceExpression.Create($"{output}/{scope}"),
EntraIdEndpointRedirectUri.cs (7)
15ReferenceExpression CreateExpression(); 24public ReferenceExpression CreateExpression() => ReferenceExpression.Create($"https://{host}{path}"); 52public ReferenceExpression CreateExpression() 58return ReferenceExpression.Create($"{_runModeOrigin!}{Path}"); 71var host = computeEnvironment.GetHostAddressExpression(Endpoint); 72return ReferenceExpression.Create($"https://{host}{Path}");
src\Shared\ComputeEnvironmentEndpointResolver.cs (4)
26/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint's URL by 46[NotNullWhen(true)] out ReferenceExpression? expression) 57/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint property by 77[NotNullWhen(true)] out ReferenceExpression? expression)
Aspire.Hosting.Azure.EntraId.Tests (14)
EntraIdProvisioningTests.cs (14)
864p => Assert.IsType<ReferenceExpression>(p.Value)); 892var expression = Assert.IsType<ReferenceExpression>(entra.Resource.Parameters["redirectUri0"]); 925var expression = Assert.IsType<ReferenceExpression>(entra.Resource.Parameters["redirectUri0"]); 962var expression = Assert.IsType<ReferenceExpression>(entra.Resource.Parameters["redirectUri0"]); 989var expression = Assert.IsType<ReferenceExpression>(entra.Resource.Parameters["redirectUri0"]); 1017var expression = Assert.IsType<ReferenceExpression>(entra.Resource.Parameters["redirectUri0"]); 1050Assert.IsType<ReferenceExpression>(entra.Resource.Parameters["redirectUri1"]); 1073public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) => 1074ReferenceExpression.Create($"{endpointReference.Resource.Name}.contoso.example");
Aspire.Hosting.Azure.EventHubs (18)
AzureEventHubConsumerGroupResource.cs (3)
37public ReferenceExpression ConnectionStringExpression => Parent.Parent.GetConnectionString(Parent.HubName, ConsumerGroupName); 72IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 79yield return new("ConsumerGroupName", ReferenceExpression.Create($"{ConsumerGroupName}"));
AzureEventHubResource.cs (3)
46public ReferenceExpression ConnectionStringExpression => Parent.GetConnectionString(HubName); 124IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 131yield return new("EventHubName", ReferenceExpression.Create($"{HubName}"));
AzureEventHubsResource.cs (12)
64public ReferenceExpression HostName => 66ReferenceExpression.Create($"{EmulatorEndpoint.Property(EndpointProperty.Host)}") : 67ReferenceExpression.Create($"{EventHubsHostName}"); 76public ReferenceExpression? Port => 78ReferenceExpression.Create($"{EmulatorEndpoint.Property(EndpointProperty.Port)}") : 87public ReferenceExpression UriExpression => 89ReferenceExpression.Create($"sb://{EmulatorEndpoint.Property(EndpointProperty.HostAndPort)}") : 90ReferenceExpression.Create($"{EventHubsEndpoint}"); 95public ReferenceExpression ConnectionStringExpression => GetConnectionString(); 97internal ReferenceExpression GetConnectionString(string? eventHub = null, string? consumerGroup = null) 200IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 213yield return new("ConnectionString", ReferenceExpression.Create($"Endpoint={EmulatorEndpoint.Property(EndpointProperty.HostAndPort)};SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true"));
Aspire.Hosting.Azure.FrontDoor (5)
AzureFrontDoorExtensions.cs (1)
98var hostExpression = computeEnv.GetHostAddressExpression(endpointReference);
src\Shared\ComputeEnvironmentEndpointResolver.cs (4)
26/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint's URL by 46[NotNullWhen(true)] out ReferenceExpression? expression) 57/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint property by 77[NotNullWhen(true)] out ReferenceExpression? expression)
Aspire.Hosting.Azure.Functions (17)
AzureFunctionsProjectResourceExtensions.cs (1)
273context.EnvironmentVariables["ASPNETCORE_URLS"] = ReferenceExpression.Create($"http://+:{endpoint.Property(EndpointProperty.TargetPort)}");
DurableTask\DurableTaskHubResource.cs (7)
24public ReferenceExpression ConnectionStringExpression => ReferenceExpression.Create($"{Parent.ConnectionStringExpression};TaskHub={TaskHubName}"); 34public ReferenceExpression TaskHubName => GetTaskHubName(); 44private ReferenceExpression GetTaskHubName() 50ParameterResource parameter => ReferenceExpression.Create($"{parameter}"), 51string hubName => ReferenceExpression.Create($"{hubName}"), 56return ReferenceExpression.Create($"{Name}");
DurableTask\DurableTaskResourceExtensions.cs (1)
237? await ReferenceExpression.Create($"{r.Parent.EmulatorDashboardEndpoint}/subscriptions/default/schedulers/default/taskhubs/{r.TaskHubName}").GetValueAsync(ct).ConfigureAwait(false)
DurableTask\DurableTaskSchedulerResource.cs (8)
20public ReferenceExpression ConnectionStringExpression => CreateConnectionString(); 22internal ReferenceExpression EmulatorDashboardEndpoint => CreateDashboardEndpoint(); 30private ReferenceExpression CreateConnectionString() 36return ReferenceExpression.Create($"Endpoint={grpcEndpoint.Property(EndpointProperty.Scheme)}://{grpcEndpoint.Property(EndpointProperty.Host)}:{grpcEndpoint.Property(EndpointProperty.Port)};Authentication=None"); 43ParameterResource parameterResource => ReferenceExpression.Create($"{parameterResource}"), 44string value => ReferenceExpression.Create($"{value}"), 52private ReferenceExpression CreateDashboardEndpoint() 58return ReferenceExpression.Create($"{dashboardEndpoint.Property(EndpointProperty.Url)}");
Aspire.Hosting.Azure.KeyVault (11)
AzureKeyVaultResource.cs (7)
54public ReferenceExpression UriExpression => 56ReferenceExpression.Create($"{EmulatorEndpoint.Property(EndpointProperty.Url)}") : 57ReferenceExpression.Create($"{VaultUri}"); 62public ReferenceExpression ConnectionStringExpression 72ReferenceExpression.Create($"{EmulatorEndpoint.Property(EndpointProperty.Url)}") : 73ReferenceExpression.Create($"{VaultUri}"); 145IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
AzureKeyVaultResourceExtensions.cs (4)
267[AspireUnion(typeof(IResourceBuilder<ParameterResource>), typeof(ReferenceExpression))] object value, 278ReferenceExpression expression => builder.AddSecret(name, secretName, expression), 312public static IResourceBuilder<AzureKeyVaultSecretResource> AddSecret(this IResourceBuilder<AzureKeyVaultResource> builder, string name, ReferenceExpression value) 373public static IResourceBuilder<AzureKeyVaultSecretResource> AddSecret(this IResourceBuilder<AzureKeyVaultResource> builder, [ResourceName] string name, string secretName, ReferenceExpression value)
Aspire.Hosting.Azure.Kubernetes (6)
AzureKubernetesIngressExtensions.cs (6)
173ReferenceExpression.Create($"{lb.AlbName}"); 175ReferenceExpression.Create($"{AzureKubernetesLoadBalancerResource.AlbNamespace}"); 179builder.Resource.GatewayClassName ??= ReferenceExpression.Create($"azure-alb-external"); 208ReferenceExpression.Create($"{lb.AlbName}"); 210ReferenceExpression.Create($"{AzureKubernetesLoadBalancerResource.AlbNamespace}"); 212builder.Resource.IngressClassName ??= ReferenceExpression.Create($"azure-alb-external");
Aspire.Hosting.Azure.Kubernetes.Tests (9)
AzureKubernetesInfrastructureTests.cs (5)
928new HelmReleaseNameAnnotation(ReferenceExpression.Create($"{releaseParameter.Resource}"))); 930new KubernetesNamespaceAnnotation(ReferenceExpression.Create($"{namespaceParameter.Resource}"))); 1000new HelmReleaseNameAnnotation(ReferenceExpression.Create($"{aks.Resource.NameOutputReference}"))); 1065new HelmReleaseNameAnnotation(ReferenceExpression.Create($"main-release"))); 1067new KubernetesNamespaceAnnotation(ReferenceExpression.Create($"main-namespace")));
AzureKubernetesIngressTests.cs (4)
82Assert.True(gateway.Resource.GatewayAnnotations.TryGetValue("alb.networking.azure.io/alb-name", out var albNameRef)); 85Assert.True(gateway.Resource.GatewayAnnotations.TryGetValue("alb.networking.azure.io/alb-namespace", out var albNsRef)); 106Assert.True(ingress.Resource.IngressAnnotations.TryGetValue("alb.networking.azure.io/alb-name", out var albNameRef)); 109Assert.True(ingress.Resource.IngressAnnotations.TryGetValue("alb.networking.azure.io/alb-namespace", out var albNsRef));
Aspire.Hosting.Azure.Kusto (11)
AzureKustoClusterResource.cs (7)
53public ReferenceExpression UriExpression => 55? ReferenceExpression.Create($"{this.GetEndpoint("http")}") 56: ReferenceExpression.Create($"{ClusterUri}"); 59public ReferenceExpression ConnectionStringExpression 68return ReferenceExpression.Create($"{endpoint}"); 73return ReferenceExpression.Create($"{ClusterUri}"); 175IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
AzureKustoReadWriteDatabaseResource.cs (4)
44public ReferenceExpression ConnectionStringExpression 53return ReferenceExpression.Create($"{Parent};{connectionStringBuilder.ToString()}"); 73IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 80yield return new("DatabaseName", ReferenceExpression.Create($"{DatabaseName}"));
Aspire.Hosting.Azure.Kusto.Tests (2)
KustoPublicApiTests.cs (2)
37var connectionStringExpression = resource.ConnectionStringExpression; 120var connectionStringExpression = resource.ConnectionStringExpression;
Aspire.Hosting.Azure.Network (15)
AzureNetworkSecurityPerimeterExtensions.cs (3)
205foreach (var prefixReference in rule.AddressPrefixReferences) 215foreach (var subReference in rule.SubscriptionReferences) 225foreach (var fqdnReference in rule.FullyQualifiedDomainNameReferences)
AzureNspAccessRule.cs (6)
40/// Gets or initializes the list of inbound address prefixes (CIDR ranges) <see cref="ReferenceExpression"/> values allowed by this rule. 46public List<ReferenceExpression> AddressPrefixReferences { get; init; } = []; 58/// Gets or initializes the subscription resource ID <see cref="ReferenceExpression"/> values allowed by this rule. 64public List<ReferenceExpression> SubscriptionReferences { get; init; } = []; 75/// Gets or initializes the fully qualified domain name <see cref="ReferenceExpression"/> values allowed by this rule. 81public List<ReferenceExpression> FullyQualifiedDomainNameReferences { get; init; } = [];
AzureSecurityRule.cs (4)
55/// Gets or sets a <see cref="ReferenceExpression"/> whose value is resolved at deploy time 59public ReferenceExpression? SourceAddressPrefixReference { get; set; } 72/// Gets or sets a <see cref="ReferenceExpression"/> whose value is resolved at deploy time 76public ReferenceExpression? DestinationAddressPrefixReference { get; set; }
AzureVirtualNetworkExtensions.cs (2)
318var subnetId = ReferenceExpression.Create($"{subnet.Resource.Id}");
Aspire.Hosting.Azure.PostgreSQL (39)
AzurePostgresFlexibleServerDatabaseResource.cs (6)
29public ReferenceExpression ConnectionStringExpression => Parent.GetDatabaseConnectionString(Name, databaseName); 55public ReferenceExpression UriExpression => 58ReferenceExpression.Create($"{Parent.UriExpression}/{DatabaseName:uri}"); 66public ReferenceExpression JdbcConnectionString => 91IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 93new("DatabaseName", ReferenceExpression.Create($"{DatabaseName}")),
AzurePostgresFlexibleServerResource.cs (31)
88public ReferenceExpression HostName => 90ReferenceExpression.Create($"{InnerResource.PrimaryEndpoint.Property(EndpointProperty.HostAndPort)}") : 91ReferenceExpression.Create($"{HostNameOutput}"); 100public ReferenceExpression Host => 102ReferenceExpression.Create($"{InnerResource.Host}") : 103ReferenceExpression.Create($"{HostNameOutput}"); 112public ReferenceExpression Port => 114ReferenceExpression.Create($"{InnerResource.Port}") : 115ReferenceExpression.Create($"5432"); 124public ReferenceExpression? UserName => 128ReferenceExpression.Create($"{UserNameParameter}") : 138public ReferenceExpression? Password => 140ReferenceExpression.Create($"{InnerResource.PasswordParameter}") : 142ReferenceExpression.Create($"{PasswordParameter}") : 151public ReferenceExpression UriExpression => 156ReferenceExpression.Create($"postgresql://{UserNameParameter:uri}:{PasswordParameter:uri}@{HostNameOutput}") : 157ReferenceExpression.Create($"postgresql://:{PasswordParameter:uri}@{HostNameOutput}") : 159ReferenceExpression.Create($"postgresql://{UserNameParameter:uri}@{HostNameOutput}") : 160ReferenceExpression.Create($"postgresql://{HostNameOutput}"); 171public ReferenceExpression ConnectionStringExpression => 174ReferenceExpression.Create($"{ConnectionStringSecretOutput}") : 175ReferenceExpression.Create($"{ConnectionStringOutput}")); 177internal ReferenceExpression BuildJdbcConnectionString(string? databaseName = null) 200public ReferenceExpression JdbcConnectionString => 226internal ReferenceExpression GetDatabaseConnectionString(string databaseResourceName, string databaseName) 234return ReferenceExpression.Create($"{dbSecret}"); 237return ReferenceExpression.Create($"{this};Database={databaseName}"); 290IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 294: new Dictionary<string, ReferenceExpression>( 306propertiesDictionary["Username"] = ReferenceExpression.Create($"{UserNameParameter}"); 311propertiesDictionary["Password"] = ReferenceExpression.Create($"{PasswordParameter}");
AzurePostgresResource.cs (2)
27public ReferenceExpression ConnectionStringExpression => 28ReferenceExpression.Create($"{ConnectionString}");
Aspire.Hosting.Azure.Provisioning (1)
BicepValueFactory.cs (1)
160ReferenceExpression expression,
Aspire.Hosting.Azure.Provisioning.Tests (2)
BicepValueProxyTests.cs (2)
279? factory.ReferenceExpression(ReferenceExpression.Create($"{parameter}"), "ipAddress", isSecure: true) 528.ReferenceExpression(ReferenceExpression.Create($"secretValue"), "secretParam", isSecure: true)
Aspire.Hosting.Azure.Redis (26)
AzureManagedRedisResource.cs (16)
83public ReferenceExpression ConnectionStringExpression => 86ReferenceExpression.Create($"{ConnectionStringSecretOutput}") : 87ReferenceExpression.Create($"{ConnectionStringOutput}")); 96public ReferenceExpression HostName => 98ReferenceExpression.Create($"{InnerResource.PrimaryEndpoint.Property(EndpointProperty.Host)}") : 99ReferenceExpression.Create($"{HostNameOutput}"); 108public ReferenceExpression Port => 110ReferenceExpression.Create($"{InnerResource.Port}") : 111ReferenceExpression.Create($"10000"); // Based on the ConfigureRedisInfrastructure method 123public ReferenceExpression? Password => 126ReferenceExpression.Create($"{InnerResource.PasswordParameter}") : 129ReferenceExpression.Create($"{PrimaryAccessKeySecretOutput}") : 138public ReferenceExpression UriExpression 149return ReferenceExpression.Create($"rediss://:{PrimaryAccessKeySecretOutput:uri}@{HostName}:{Port}"); 152return ReferenceExpression.Create($"rediss://{HostName}:{Port}"); 233IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
AzureRedisCacheResource.cs (8)
64public ReferenceExpression ConnectionStringExpression => 67ReferenceExpression.Create($"{ConnectionStringSecretOutput}") : 68ReferenceExpression.Create($"{ConnectionStringOutput}")); 77public ReferenceExpression HostName => 79ReferenceExpression.Create($"{InnerResource.PrimaryEndpoint.Property(EndpointProperty.HostAndPort)}") : 80ReferenceExpression.Create($"{HostNameOutput}"); 89public ReferenceExpression? Password => 91ReferenceExpression.Create($"{InnerResource.PasswordParameter}") :
AzureRedisResource.cs (2)
27public ReferenceExpression ConnectionStringExpression => 28ReferenceExpression.Create($"{ConnectionString}");
Aspire.Hosting.Azure.Sandboxes (14)
AzureSandboxContainerDeployment.cs (7)
1191when TryResolveEndpointReferenceValue(endpointReference, currentComputeEnvironment, out var endpointExpression): 1198when TryResolveEndpointReferenceValue(endpointReferenceExpression, currentComputeEnvironment, out var endpointExpression): 1204case ReferenceExpression referenceExpression: 1251ReferenceExpression expression) 1256var branch = string.Equals(condition, expression.MatchValue, StringComparison.OrdinalIgnoreCase) 1290internal static bool TryResolveEndpointReferenceValue(EndpointReference endpointReference, IComputeEnvironmentResource? currentComputeEnvironment, [NotNullWhen(true)] out ReferenceExpression? expression) 1295internal static bool TryResolveEndpointReferenceValue(EndpointReferenceExpression endpointReferenceExpression, IComputeEnvironmentResource? currentComputeEnvironment, [NotNullWhen(true)] out ReferenceExpression? expression)
AzureSandboxGroupResource.cs (3)
290public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) 299public ReferenceExpression GetEndpointPropertyExpression(EndpointReferenceExpression endpointReferenceExpression) 312return ReferenceExpression.Create($"{provider}");
src\Shared\ComputeEnvironmentEndpointResolver.cs (4)
26/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint's URL by 46[NotNullWhen(true)] out ReferenceExpression? expression) 57/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint property by 77[NotNullWhen(true)] out ReferenceExpression? expression)
Aspire.Hosting.Azure.Search (5)
AzureSearchResource.cs (5)
52public ReferenceExpression UriExpression => ReferenceExpression.Create($"{Endpoint}"); 57public ReferenceExpression ConnectionStringExpression => 58ReferenceExpression.Create($"{ConnectionString}"); 89IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
Aspire.Hosting.Azure.ServiceBus (22)
AzureServiceBusQueueResource.cs (3)
47public ReferenceExpression ConnectionStringExpression => Parent.GetConnectionString(QueueName, null); 213IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 220yield return new("QueueName", ReferenceExpression.Create($"{QueueName}"));
AzureServiceBusResource.cs (13)
54public ReferenceExpression HostName => 56ReferenceExpression.Create($"{EmulatorEndpoint.Property(EndpointProperty.Host)}") : 57ReferenceExpression.Create($"{ServiceBusHostName}"); 66public ReferenceExpression? Port => 68ReferenceExpression.Create($"{EmulatorEndpoint.Property(EndpointProperty.Port)}") : 77public ReferenceExpression UriExpression => 79ReferenceExpression.Create($"sb://{EmulatorEndpoint.Property(EndpointProperty.HostAndPort)}") : 80ReferenceExpression.Create($"{ServiceBusEndpoint}"); 85public ReferenceExpression ConnectionStringExpression => 87? ReferenceExpression.Create($"Endpoint=sb://{EmulatorEndpoint.Property(EndpointProperty.HostAndPort)};SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true;") 88: ReferenceExpression.Create($"{ServiceBusEndpoint}"); 122internal ReferenceExpression GetConnectionString(string? queueOrTopicName, string? subscriptionName) 180IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
AzureServiceBusSubscriptionResource.cs (3)
47public ReferenceExpression ConnectionStringExpression => Parent.Parent.GetConnectionString(Parent.TopicName, SubscriptionName); 198IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 205yield return new("SubscriptionName", ReferenceExpression.Create($"{SubscriptionName}"));
AzureServiceBusTopicResource.cs (3)
47public ReferenceExpression ConnectionStringExpression => Parent.GetConnectionString(TopicName, null); 141IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 148yield return new("TopicName", ReferenceExpression.Create($"{TopicName}"));
Aspire.Hosting.Azure.SignalR (7)
AzureSignalRResource.cs (7)
50public ReferenceExpression UriExpression => 52ReferenceExpression.Create($"{EmulatorEndpoint.Property(EndpointProperty.Url)}") : 53ReferenceExpression.Create($"https://{HostName}"); 58public ReferenceExpression ConnectionStringExpression => 60ReferenceExpression.Create($"Endpoint={EmulatorEndpoint.Property(EndpointProperty.Url)};AccessKey=ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGH;Version=1.0;"): 61ReferenceExpression.Create($"Endpoint=https://{HostName};AuthType=azure"); 92IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
Aspire.Hosting.Azure.Sql (26)
AzureSqlDatabaseResource.cs (7)
36public ReferenceExpression ConnectionStringExpression => 37ReferenceExpression.Create($"{Parent};Database={DatabaseName}"); 68public ReferenceExpression UriExpression => 71ReferenceExpression.Create($"{Parent.UriExpression}/{DatabaseName:uri}"); 80public ReferenceExpression JdbcConnectionString => 107IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 110new ("DatabaseName", ReferenceExpression.Create($"{DatabaseName}")),
AzureSqlServerResource.cs (19)
93public ReferenceExpression HostName => 95ReferenceExpression.Create($"{InnerResource!.PrimaryEndpoint.Property(EndpointProperty.Host)}") : 96ReferenceExpression.Create($"{FullyQualifiedDomainName}"); 105public ReferenceExpression Port => 107ReferenceExpression.Create($"{InnerResource.Port}") : 108ReferenceExpression.Create($"1433"); 116public ReferenceExpression UriExpression => 119ReferenceExpression.Create($"mssql://{FullyQualifiedDomainName}:1433"); 124public ReferenceExpression ConnectionStringExpression 131ReferenceExpression? result = null; 138ReferenceExpression.Create($"Server=tcp:{FullyQualifiedDomainName},1433;Encrypt=True;Authentication=\"Active Directory Default\""); 481internal ReferenceExpression BuildJdbcConnectionString(string? databaseName = null) 488var databaseNameReference = ReferenceExpression.Create($"{databaseName:uri}"); 503public ReferenceExpression JdbcConnectionString => 508IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 515var result = new Dictionary<string, ReferenceExpression>( 517new ("Host", ReferenceExpression.Create($"{HostName}")), 518new ("Port", ReferenceExpression.Create($"{Port}")),
Aspire.Hosting.Azure.Storage (49)
AzureBlobStorageContainerResource.cs (3)
31public ReferenceExpression ConnectionStringExpression => Parent.GetConnectionString(BlobContainerName); 58IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 65yield return new("BlobContainerName", ReferenceExpression.Create($"{BlobContainerName}"));
AzureBlobStorageResource.cs (5)
32public ReferenceExpression UriExpression => Parent.BlobUriExpression; 37public ReferenceExpression ConnectionStringExpression => 40internal ReferenceExpression GetConnectionString(string? blobContainerName) 67var connectionString = Parent.GetBlobConnectionString(); 93IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
AzureDataLakeStorageFileSystemResource.cs (3)
30public ReferenceExpression ConnectionStringExpression => Parent.GetConnectionString(DataLakeFileSystemName); 57IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 64yield return new("DataLakeFileSystemName", ReferenceExpression.Create($"{DataLakeFileSystemName}"));
AzureDataLakeStorageResource.cs (4)
30public ReferenceExpression UriExpression => Parent.DataLakeUriExpression; 35public ReferenceExpression ConnectionStringExpression => Parent.GetDataLakeConnectionString(); 37internal ReferenceExpression GetConnectionString(string? fileSystemName) 73IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
AzureQueueStorageQueueResource.cs (3)
31public ReferenceExpression ConnectionStringExpression => Parent.GetConnectionString(QueueName); 58IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 65yield return new("QueueName", ReferenceExpression.Create($"{QueueName}"));
AzureQueueStorageResource.cs (5)
32public ReferenceExpression UriExpression => Parent.QueueUriExpression; 37public ReferenceExpression ConnectionStringExpression => 40internal ReferenceExpression GetConnectionString(string? queueName) 67var connectionString = Parent.GetEmulatorConnectionString(); 86IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
AzureStorageEmulatorConnectionString.cs (1)
13public static ReferenceExpression Create(EndpointReference? blobEndpoint = null, EndpointReference? queueEndpoint = null, EndpointReference? tableEndpoint = null)
AzureStorageResource.cs (21)
93public ReferenceExpression BlobUriExpression => IsEmulator 94? ReferenceExpression.Create($"{EmulatorBlobEndpoint.Property(EndpointProperty.Url)}") 95: ReferenceExpression.Create($"{BlobEndpoint}"); 103public ReferenceExpression DataLakeUriExpression => IsEmulator 105: ReferenceExpression.Create($"{DataLakeEndpoint}"); 113public ReferenceExpression QueueUriExpression => IsEmulator 114? ReferenceExpression.Create($"{EmulatorQueueEndpoint.Property(EndpointProperty.Url)}") 115: ReferenceExpression.Create($"{QueueEndpoint}"); 123public ReferenceExpression TableUriExpression => IsEmulator 124? ReferenceExpression.Create($"{EmulatorTableEndpoint.Property(EndpointProperty.Url)}") 125: ReferenceExpression.Create($"{TableEndpoint}"); 131internal ReferenceExpression GetEmulatorConnectionString() => IsEmulator 135internal ReferenceExpression GetTableConnectionString() => IsEmulator 137: ReferenceExpression.Create($"{TableEndpoint}"); 139internal ReferenceExpression GetQueueConnectionString() => IsEmulator 141: ReferenceExpression.Create($"{QueueEndpoint}"); 143internal ReferenceExpression GetBlobConnectionString() => IsEmulator 145: ReferenceExpression.Create($"{BlobEndpoint}"); 147internal ReferenceExpression GetDataLakeConnectionString() => IsEmulator 149: ReferenceExpression.Create($"{DataLakeEndpoint}"); 156var connectionString = GetEmulatorConnectionString();
AzureTableStorageResource.cs (4)
34public ReferenceExpression UriExpression => Parent.TableUriExpression; 39public ReferenceExpression ConnectionStringExpression => 46var connectionString = Parent.GetEmulatorConnectionString(); 69IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
Aspire.Hosting.Azure.Tests (128)
AzureAppServiceTests.cs (7)
245var cs = builder.AddConnectionString("my-db", ReferenceExpression.Create($"Host=example")); 1186var endpointReferenceEx = env.Resource.GetHostAddressExpression(project.GetEndpoint("http")); 1218var expression = env.Resource.GetEndpointPropertyExpression(project.GetEndpoint("http").Property(property)); 1439var conditional = ReferenceExpression.CreateConditional( 1442ReferenceExpression.Create($"enabled"), 1443ReferenceExpression.Create($"disabled"));
AzureContainerAppExpressEndpointTests.cs (17)
47var nested = ReferenceExpression.Create($"prefix/{ReferenceExpression.Create($"{endpoint}/health")}"); 48context.EnvironmentVariables["CONDITIONAL"] = ReferenceExpression.CreateConditional( 49enabled.Resource, bool.TrueString, nested, ReferenceExpression.Create($"disabled")); 52web.WithArgs(context => context.Args.Add(ReferenceExpression.Create($"--api={endpoint}"))); 81var host = environment.Resource.GetHostAddressExpression(endpoint); 109var expression = environment.Resource.GetEndpointPropertyExpression(endpoint.Property(property)); 130var expression = environment.Resource.GetEndpointPropertyExpression(api.GetEndpoint("http").Property(property)); 173web.WithEnvironment("API", ReferenceExpression.CreateConditional( 175ReferenceExpression.Create($"prefix/{ReferenceExpression.Create($"{api.GetEndpoint("http")}")}"), 176ReferenceExpression.Create($"disabled"))); 255.WithEnvironment("API_AUTHORITY", ReferenceExpression.Create($"api={endpoint.Property(EndpointProperty.HostAndPort)}")); 312var expression = environmentExpression 314: ReferenceExpression.Create($"{endpoint}"); 315api.WithEnvironment("SELF_URL", ReferenceExpression.Create($"prefix/{expression}"));
AzureContainerAppsTests.cs (18)
453var connection = builder.AddConnectionString("my-db", ReferenceExpression.Create($"Host=example")); 2834var endpointReferenceEx = env.Resource.GetHostAddressExpression(project.GetEndpoint("http")); 2866var expression = env.Resource.GetEndpointPropertyExpression(project.GetEndpoint("http").Property(property)); 3132var conditional = ReferenceExpression.CreateConditional( 3135ReferenceExpression.Create($"enabled"), 3136ReferenceExpression.Create($"disabled")); 3173var conditional = ReferenceExpression.CreateConditional( 3176ReferenceExpression.Create($"prefix-{connectionPrefix.Resource}-enabled"), 3177ReferenceExpression.Create($"disabled")); 3214var innerConditional = ReferenceExpression.CreateConditional( 3217ReferenceExpression.Create($"inner-true"), 3218ReferenceExpression.Create($"inner-false")); 3220var outerConditional = ReferenceExpression.CreateConditional( 3224ReferenceExpression.Create($"outer-false"));
AzureCosmosDBExtensionsTests.cs (14)
278var csExpr = cosmos.Resource.ConnectionStringExpression; 299var csExpr = cosmos.Resource.ConnectionStringExpression; 698CertificatePath = ReferenceExpression.Create($"/certs/server.crt"), 699KeyPath = ReferenceExpression.Create($"/certs/server.key"), 700CertificateWithKeyPath = ReferenceExpression.Create($"/certs/server.pem"), 701PfxPath = ReferenceExpression.Create($"/certs/server.pfx"), 725var bundlePath = ReferenceExpression.Create($"/certs/bundle.pem"); 734CertificateDirectoriesPath = ReferenceExpression.Create($"/certs"), 766CertificatePath = ReferenceExpression.Create($"/certs/server.crt"), 767KeyPath = ReferenceExpression.Create($"/certs/server.key"), 768CertificateWithKeyPath = ReferenceExpression.Create($"/certs/server.pem"), 769PfxPath = ReferenceExpression.Create($"/certs/server.pfx"), 1033var csExpr = cosmos.Resource.ConnectionStringExpression;
AzureEnvironmentResourceTests.cs (4)
95var skuDescriptionExpr = ReferenceExpression.Create($"{description} {storageSku}"); 141var skuDescriptionExpr = ReferenceExpression.Create($"{description} {storageSku}");
AzureFrontDoorPrivateLinkTests.cs (2)
535public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) 536=> ReferenceExpression.Create($"{endpointReference.Resource.Name}.{new BicepOutputReference("domain", this)}");
AzureFunctionsTests.cs (1)
249var aspNetCoreUrlsValue = await ((ReferenceExpression)aspNetCoreUrls).GetValueAsync(default);
AzureKeyVaultTests.cs (9)
248var connectionString = ReferenceExpression.Create($"Server=localhost;Database=mydb;pwd={pwd}"); 279var connectionString = ReferenceExpression.Create($"Server=localhost;Database=mydb;User=user"); 432var connectionString = keyVault.Resource.ConnectionStringExpression; 445var connectionString = keyVault.Resource.ConnectionStringExpression; 460ReferenceExpression.Create($"https://redirected-vault.vault.azure.net")); 465var connectionString = keyVault.Resource.ConnectionStringExpression; 481ReferenceExpression.Create($"https://redirected-vault.vault.azure.net"));
AzureKustoExtensionsTests.cs (1)
94var connectionStringExpr = kusto.Resource.ConnectionStringExpression;
AzureNetworkSecurityGroupExtensionsTests.cs (2)
314SourceAddressPrefixReference = ReferenceExpression.Create($"{pip.Resource.IpAddress}") 336DestinationAddressPrefixReference = ReferenceExpression.Create($"{pip.Resource.IpAddress}")
AzureNetworkSecurityPerimeterExtensionsTests.cs (3)
106AddressPrefixReferences = { ReferenceExpression.Create($"{inboundAddressPrefix}") } 113SubscriptionReferences = { ReferenceExpression.Create($"{allowedSubscription}") } 120FullyQualifiedDomainNameReferences = { ReferenceExpression.Create($"{outboundFqdn}") }
AzureProvisioningResourceExtensionsTests.cs (2)
21var referenceExpression = ReferenceExpression.Create($"prefix:{endpointReference.Property(EndpointProperty.HostAndPort)}");
AzureSandboxesTests.cs (9)
2211Assert.True(AzureSandboxContainerDeployment.TryResolveEndpointReferenceValue(api.GetEndpoint("http"), sandboxGroup.Resource, out var urlExpression)); 2216Assert.True(AzureSandboxContainerDeployment.TryResolveEndpointReferenceValue(api.GetEndpoint("http").Property(EndpointProperty.TargetPort), sandboxGroup.Resource, out var targetPortExpression)); 2814out var httpUrlExpression)); 2818out var httpsUrlExpression)); 2922var endpointExpression = ReferenceExpression.Create($"{api.GetEndpoint("http")}/v1"); 3012ReferenceExpression.Create($"Endpoint=https://api.example.test;Password=https://credential.example.test")); 3052.WithEnvironment("API_URL", ReferenceExpression.Create($"{api.GetEndpoint("http")}/v1")) 3210.WithArgs(ReferenceExpression.Create(
AzureSignalREmulatorFunctionalTest.cs (1)
30var connectionStringExpr = signalR.Resource.ConnectionStringExpression;
AzureStorageResourceUriExpressionTests.cs (3)
23var uriExpression = resource.BlobUriExpression; 65var uriExpression = resource.QueueUriExpression; 84var uriExpression = resource.TableUriExpression;
AzureWebPubSubExtensionsTests.cs (4)
200var url = ReferenceExpression.CreateConditional( 203ReferenceExpression.Create($"https://prod.example.com/events"), 204ReferenceExpression.Create($"https://test.example.com/events"));
BicepUtilitiesTests.cs (4)
120.WithParameter("expr", ReferenceExpression.Create($"{param.Resource}/1")) 177bicep.Parameters["expression"] = ReferenceExpression.Create($"{valueProvider}/suffix"); 644public ReferenceExpression ConnectionStringExpression => 645ReferenceExpression.Create($"{connectionString}");
FoundryExtensionsTests.cs (1)
857context.EnvironmentVariables["WEATHER_HEALTH_URL"] = ReferenceExpression.Create($"{weatherAgent.GetEndpoint("http")}/health");
PublicApiTests\WebPubSubPublicApiTests.cs (6)
6using static Aspire.Hosting.ApplicationModel.ReferenceExpression; 75var urlExpression = ReferenceExpression.Create($"host"); 98var urlExpression = ReferenceExpression.Create($"host"); 119ReferenceExpression urlExpression = null!;
ResourceWithAzureFunctionsConfigTests.cs (19)
255var targetReferenceExpression = Assert.IsType<ReferenceExpression>(target["cosmosdb__accountEndpoint"]); 258targetReferenceExpression = Assert.IsType<ReferenceExpression>(target["Aspire__Microsoft__Azure__Cosmos__cosmosdb__AccountEndpoint"]); 280var targetReferenceExpression = Assert.IsType<ReferenceExpression>(target["cosmosdb__accountEndpoint"]); 283targetReferenceExpression = Assert.IsType<ReferenceExpression>(target["Aspire__Microsoft__Azure__Cosmos__cosmosdb__AccountEndpoint"]); 308var targetReferenceExpression = Assert.IsType<ReferenceExpression>(target["cosmosdb"]); 311targetReferenceExpression = Assert.IsType<ReferenceExpression>(target["Aspire__Microsoft__Azure__Cosmos__cosmosdb__ConnectionString"]); 330var targetReferenceExpression = Assert.IsType<ReferenceExpression>(target["cosmosdb"]); 333targetReferenceExpression = Assert.IsType<ReferenceExpression>(target["Aspire__Microsoft__Azure__Cosmos__cosmosdb__ConnectionString"]); 428var connectionStringExpression = Assert.IsType<ReferenceExpression>(target["Aspire__Azure__Messaging__ServiceBus__myqueue__ConnectionString"]); 467var connectionStringExpression = Assert.IsType<ReferenceExpression>(target["Aspire__Azure__Messaging__ServiceBus__mytopic__ConnectionString"]); 511var connectionStringExpression = Assert.IsType<ReferenceExpression>(target["Aspire__Azure__Messaging__ServiceBus__mysub__ConnectionString"]); 514connectionStringExpression = Assert.IsType<ReferenceExpression>(target["mysub"]);
src\Aspire.Hosting.Azure.Storage\AzureStorageEmulatorConnectionString.cs (1)
13public static ReferenceExpression Create(EndpointReference? blobEndpoint = null, EndpointReference? queueEndpoint = null, EndpointReference? tableEndpoint = null)
Aspire.Hosting.Azure.WebPubSub (20)
AzureWebPubSubExtensions.cs (6)
125var urlExpression = url; 315ReferenceExpression.ExpressionInterpolatedStringHandler urlTemplateExpression, 322var urlExpression = ReferenceExpression.Create(urlTemplateExpression); 342ReferenceExpression urlExpression, 367ReferenceExpression urlExpression,
AzureWebPubSubHubResource.cs (5)
43public ReferenceExpression ConnectionStringExpression => ReferenceExpression.Create($"{Parent.ServiceConnectionStringExpression};Hub={HubName}"); 45internal List<(ReferenceExpression url, string userEvents, string[]? systemEvents, UpstreamAuthSettings? auth)> EventHandlers { get; } = new(); 47IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 49new("HubName", ReferenceExpression.Create($"{HubName}")),
AzureWebPubSubResource.cs (9)
49public ReferenceExpression ConnectionStringExpression => 50IsEmulator ? ServiceConnectionStringExpression : ReferenceExpression.Create($"{Endpoint}"); 52internal ReferenceExpression ServiceConnectionStringExpression => 54ReferenceExpression.Create($"Endpoint={UriExpression};AccessKey={EmulatorAccessKey};Version=1.0") : 55ReferenceExpression.Create($"Endpoint={Endpoint}"); 64public ReferenceExpression UriExpression => 65IsEmulator ? ReferenceExpression.Create($"{EmulatorEndpoint.Property(EndpointProperty.Url)}") : ReferenceExpression.Create($"{Endpoint}"); 96IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties()
Aspire.Hosting.Blazor (2)
GatewayConfigurationBuilder.cs (2)
207/// Builds the ConfigResponse JSON as a <see cref="ReferenceExpression"/>. In dev mode the 210internal static ReferenceExpression BuildConfigExpression(
Aspire.Hosting.CodeGeneration.Go.Tests (3)
tests\Aspire.Hosting.CodeGeneration.TypeScript.Tests\TestTypes\TestExtensions.cs (1)
495ReferenceExpression connectionString) where T : IResourceWithConnectionString
tests\Aspire.Hosting.CodeGeneration.TypeScript.Tests\TestTypes\TestRedisResource.cs (2)
17public ReferenceExpression ConnectionStringExpression => 18ReferenceExpression.Create($"{Name}");
Aspire.Hosting.CodeGeneration.Java.Tests (3)
tests\Aspire.Hosting.CodeGeneration.TypeScript.Tests\TestTypes\TestExtensions.cs (1)
495ReferenceExpression connectionString) where T : IResourceWithConnectionString
tests\Aspire.Hosting.CodeGeneration.TypeScript.Tests\TestTypes\TestRedisResource.cs (2)
17public ReferenceExpression ConnectionStringExpression => 18ReferenceExpression.Create($"{Name}");
Aspire.Hosting.CodeGeneration.Python.Tests (3)
tests\Aspire.Hosting.CodeGeneration.TypeScript.Tests\TestTypes\TestExtensions.cs (1)
495ReferenceExpression connectionString) where T : IResourceWithConnectionString
tests\Aspire.Hosting.CodeGeneration.TypeScript.Tests\TestTypes\TestRedisResource.cs (2)
17public ReferenceExpression ConnectionStringExpression => 18ReferenceExpression.Create($"{Name}");
Aspire.Hosting.CodeGeneration.Rust.Tests (3)
tests\Aspire.Hosting.CodeGeneration.TypeScript.Tests\TestTypes\TestExtensions.cs (1)
495ReferenceExpression connectionString) where T : IResourceWithConnectionString
tests\Aspire.Hosting.CodeGeneration.TypeScript.Tests\TestTypes\TestRedisResource.cs (2)
17public ReferenceExpression ConnectionStringExpression => 18ReferenceExpression.Create($"{Name}");
Aspire.Hosting.CodeGeneration.TypeScript.Tests (3)
TestTypes\TestExtensions.cs (1)
495ReferenceExpression connectionString) where T : IResourceWithConnectionString
TestTypes\TestRedisResource.cs (2)
17public ReferenceExpression ConnectionStringExpression => 18ReferenceExpression.Create($"{Name}");
Aspire.Hosting.Containers.Tests (2)
ContainerResourceTests.cs (2)
363public ReferenceExpression ConnectionStringExpression => 364ReferenceExpression.Create($"{connectionString}");
Aspire.Hosting.Docker (9)
DockerComposeEnvironmentResource.cs (2)
261public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) 267return ReferenceExpression.Create($"{resource.Name.ToLowerInvariant()}");
DockerComposeServiceResourceExtensions.cs (2)
59if (value is ReferenceExpression expr) 68var branch = string.Equals(conditionStr, expr.MatchValue, StringComparison.OrdinalIgnoreCase)
LocalContainerRegistry.cs (5)
23public ReferenceExpression Name => ReferenceExpression.Create($"local"); 30public ReferenceExpression Endpoint => ReferenceExpression.Create($""); 33public ReferenceExpression? Repository => null;
Aspire.Hosting.Docker.Tests (15)
DockerComposePublisherTests.cs (14)
34var cs = builder.AddConnectionString("cs", ReferenceExpression.Create($"Url={param0}, Secret={param1}")); 116var connection = builder.AddConnectionString("my-db", ReferenceExpression.Create($"Host=example")); 1241var conditional = ReferenceExpression.CreateConditional( 1244ReferenceExpression.Create($",ssl=true"), 1245ReferenceExpression.Empty); 1249var conditionalFalse = ReferenceExpression.CreateConditional( 1252ReferenceExpression.Create($",ssl=true"), 1253ReferenceExpression.Create($",ssl=false")); 1283var conditional = ReferenceExpression.CreateConditional( 1286ReferenceExpression.Create($",ssl=true"), 1287ReferenceExpression.Create($",ssl=false"));
DockerComposeTests.cs (1)
276var endpointReferenceEx = env.Resource.GetHostAddressExpression(project.GetEndpoint("http"));
Aspire.Hosting.EntityFrameworkCore.Tests (6)
AddEFMigrationsTests.cs (2)
318public ReferenceExpression ConnectionStringExpression => 319ReferenceExpression.Create($"Host=localhost;Database={Name}");
EFMigrationPipelineTests.cs (4)
890public ReferenceExpression ConnectionStringExpression => 891ReferenceExpression.Create($"Host=localhost;Database={Name}"); 904public ReferenceExpression ConnectionStringExpression => 905ReferenceExpression.Create($"{Parent};Database={Name}");
Aspire.Hosting.Foundry (63)
FoundryDeploymentResource.cs (7)
105public ReferenceExpression ConnectionStringExpression => Parent.IsEmulator 106? ReferenceExpression.Create($"{Parent};Model={LocalModelId ?? ModelName}") 107: ReferenceExpression.Create($"{Parent};Deployment={DeploymentName}"); 109IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 113new("ModelName", ReferenceExpression.Create($"{model}")), 114new("Format", ReferenceExpression.Create($"{Format}")), 115new("Version", ReferenceExpression.Create($"{ModelVersion}")),
FoundryResource.cs (10)
57public ReferenceExpression UriExpression => 60ReferenceExpression.Create($"{EmulatorServiceUri.ToString()}") : 61ReferenceExpression.Empty : 62ReferenceExpression.Create($"{AIFoundryApiEndpoint}"); 67public ReferenceExpression ConnectionStringExpression => 69? ReferenceExpression.Create($"Endpoint={EmulatorServiceUri?.ToString()};Key={ApiKey}") 70: ReferenceExpression.Create($"Endpoint={Endpoint};EndpointAIInference={AIFoundryApiEndpoint}models"); 130IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 134yield return new("AIInferenceUri", IsEmulator ? UriExpression : ReferenceExpression.Create($"{AIFoundryApiEndpoint}models")); 138yield return new("Key", ReferenceExpression.Create($"{ApiKey}"));
HostedAgent\AzureHostedAgentResource.cs (6)
396ReferenceExpression referenceExpression when referenceExpression.IsConditional => 400ReferenceExpression referenceExpression => referenceExpression.ValueProviders.Any(valueProvider => IsHostedAgentTargetPortValue(valueProvider, hostedAgent)), 427case ReferenceExpression referenceExpression: 452ReferenceExpression expression, 462var branch = string.Equals(conditionValue, expression.MatchValue, StringComparison.OrdinalIgnoreCase) ? expression.WhenTrue! : expression.WhenFalse!; 509var expression = computeEnvironment.GetEndpointPropertyExpression(endpointReferenceExpression);
Project\ProjectResource.cs (11)
114public ReferenceExpression ConnectionStringExpression => ReferenceExpression.Create($"Endpoint={Endpoint}"); 123public ReferenceExpression UriExpression => ReferenceExpression.Create($"{Endpoint}"); 134IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 139yield return new("ApplicationInsightsConnectionString", ReferenceExpression.Create($"{AppInsightsConnectionString}")); 214ReferenceExpression IComputeEnvironmentResource.GetHostAddressExpression(EndpointReference endpointReference) 229ReferenceExpression IComputeEnvironmentResource.GetEndpointPropertyExpression(EndpointReferenceExpression endpointReferenceExpression) 237EndpointProperty.Scheme => ReferenceExpression.Create($"https"), 243private ReferenceExpression GetAgentAddressExpression(EndpointReference endpointReference) 256return ReferenceExpression.Create($"{Endpoint}/agents/{agentName}");
PromptAgent\AzurePromptAgentResource.cs (5)
163public ReferenceExpression ConnectionStringExpression => 164ReferenceExpression.Create($"{Project.Endpoint}/agents/{Name}"); 166IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 168yield return new("AgentName", ReferenceExpression.Create($"{Name}")); 169yield return new("ProjectEndpoint", ReferenceExpression.Create($"{Project.Endpoint}"));
src\Shared\ComputeEnvironmentEndpointResolver.cs (4)
26/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint's URL by 46[NotNullWhen(true)] out ReferenceExpression? expression) 57/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint property by 77[NotNullWhen(true)] out ReferenceExpression? expression)
Toolbox\FoundryToolboxBuilderExtensions.cs (6)
235return builder.WithMcpTool(name, ReferenceExpression.Create($"{endpointUri.AbsoluteUri}"), options); 262return builder.WithMcpTool(name, ReferenceExpression.Create($"{endpoint}"), options); 271/// pointing at a resource endpoint, or a <see cref="ReferenceExpression"/> for cases where the 281[AspireUnion(typeof(string), typeof(EndpointReference), typeof(ReferenceExpression))] object endpoint, 293ReferenceExpression endpointExpression => builder.WithMcpTool(name, endpointExpression, options), 374ReferenceExpression endpointExpression,
Toolbox\FoundryToolboxResource.cs (12)
174public ReferenceExpression UriExpression => Version is { Length: > 0 } version 176: ReferenceExpression.Create($"{Parent.Endpoint}/toolboxes/{Name}/mcp?api-version={ApiVersion}"); 181public ReferenceExpression ConnectionStringExpression => UriExpression; 219IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 221yield return new("Name", ReferenceExpression.Create($"{Name}")); 222yield return new("ProjectEndpoint", ReferenceExpression.Create($"{Parent.Endpoint}")); 224yield return new("ApiVersion", ReferenceExpression.Create($"{ApiVersion}")); 225yield return new("FoundryFeatures", ReferenceExpression.Create($"{PreviewFeatureHeaderValue}")); 226yield return new("AuthorizationScope", ReferenceExpression.Create($"{AuthorizationScopeValue}")); 230yield return new("Version", ReferenceExpression.Create($"{version}")); 446internal ReferenceExpression GetVersionUriExpression(string version) => 447ReferenceExpression.Create(
Toolbox\FoundryToolboxToolDefinition.cs (2)
115ReferenceExpression endpointExpression, 136public ReferenceExpression EndpointExpression { get; }
Aspire.Hosting.Foundry.Tests (16)
FoundryToolboxReconcilerTests.cs (4)
403ReferenceExpression.Create($"https://inventory.example.com/mcp")) 407ReferenceExpression.Create($"https://inventory.example.com/mcp"), 447ReferenceExpression.Create($"https://first.example.com/mcp"), 452ReferenceExpression.Create($"https://second.example.com/mcp"),
HostedAgentExtensionTests.cs (5)
634var connection = builder.AddConnectionString("my-db", ReferenceExpression.Create($"Host=example")); 678var connection = builder.AddConnectionString("my-db", ReferenceExpression.Create($"Host=example")); 705var connection = builder.AddConnectionString("my-db", ReferenceExpression.Create($"Host=primary")); 710ReferenceExpression.Create($"Host=http")); 733var connection = builder.AddConnectionString("my-db", ReferenceExpression.Create($"Host=example"));
ProjectResourceTests.cs (2)
120var expr = project.Resource.ConnectionStringExpression; 131var expr = project.Resource.UriExpression;
ToolboxTests.cs (5)
222var expression = toolbox.Resource.GetVersionUriExpression("9"); 637ReferenceExpression.Create($"{empty.Resource}")); 650ReferenceExpression.Create($"http://inventory.example.com/mcp")); 662ReferenceExpression.Create($"https://localhost:7443/mcp")); 677ReferenceExpression.Create($"{endpoint}"));
Aspire.Hosting.Garnet (7)
GarnetResource.cs (7)
50public ReferenceExpression ConnectionStringExpression 63private ReferenceExpression BuildConnectionString() 82public ReferenceExpression UriExpression 102IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 104yield return new("Host", ReferenceExpression.Create($"{Host}")); 105yield return new("Port", ReferenceExpression.Create($"{Port}")); 109yield return new("Password", ReferenceExpression.Create($"{PasswordParameter}"));
Aspire.Hosting.Go.Tests (2)
AddGoAppTests.cs (2)
1240CertificateBundlePath = ReferenceExpression.Create($"/aspire/cert.pem"), 1241CertificateDirectoriesPath = ReferenceExpression.Create($"/aspire/certs"),
Aspire.Hosting.Java (8)
JavaHostingExtensions.cs (8)
1590/// <see cref="ReferenceExpression"/>, a parameter, or an endpoint reference — so a non-string value is 1591/// folded into a new <see cref="ReferenceExpression"/> rather than being read as a string. An earlier 1608ReferenceExpression re => ReferenceExpression.Create($"{re} {appended}"), 1610=> ReferenceExpression.Create($"{new ComposableValue(valueProvider, manifestProvider)} {appended}"), 1618/// Pairs the two facets Aspire needs to compose a value into a <see cref="ReferenceExpression"/>. 1621/// <see cref="ReferenceExpression.ExpressionInterpolatedStringHandler.AppendFormatted{T}(T)"/> is 1695var bundlePath = ctx.CreateCustomBundle((certificates, ct) =>
Aspire.Hosting.Java.Tests (2)
AddJavaAppTests.cs (2)
919CertificateBundlePath = ReferenceExpression.Create($"/etc/ssl/aspire/bundle.p12"), 920CertificateDirectoriesPath = ReferenceExpression.Create($"/etc/ssl/aspire/certs"),
Aspire.Hosting.JavaScript (5)
JavaScriptHostingExtensions.cs (5)
316ReferenceExpression re => ReferenceExpression.Create($"{re} --use-openssl-ca"), 737ReferenceExpression re => ReferenceExpression.Create($"{re} --use-openssl-ca"), 2062ReferenceExpression re => await re.GetValueAsync(ctx.CancellationToken).ConfigureAwait(false),
Aspire.Hosting.JavaScript.Tests (51)
AddBunAppTests.cs (6)
252var bundle = ReferenceExpression.Create($"/etc/ssl/aspire/bundle.crt"); 253var dirs = ReferenceExpression.Create($"/etc/ssl/aspire/certs"); 288CertificateBundlePath = ReferenceExpression.Create($"/etc/ssl/aspire/bundle.crt"), 289CertificateDirectoriesPath = ReferenceExpression.Create($"/etc/ssl/aspire/certs"),
AddDenoAppTests.cs (8)
2399var bundle = ReferenceExpression.Create($"/etc/ssl/aspire/bundle.crt"); 2400var dirs = ReferenceExpression.Create($"/etc/ssl/aspire/certs"); 2436CertificateBundlePath = ReferenceExpression.Create($"/etc/ssl/aspire/bundle.crt"), 2437CertificateDirectoriesPath = ReferenceExpression.Create($"/etc/ssl/aspire/certs"), 2464CertificateBundlePath = ReferenceExpression.Create($"/etc/ssl/aspire/bundle.crt"), 2465CertificateDirectoriesPath = ReferenceExpression.Create($"/etc/ssl/aspire/certs"),
AddViteAppTests.cs (37)
576CertificatePath = ReferenceExpression.Create($"cert.pem"), 577KeyPath = ReferenceExpression.Create($"key.pem"), 578CertificateWithKeyPath = ReferenceExpression.Create($"cert-with-key.pem"), 579PfxPath = ReferenceExpression.Create($"cert.pfx"), 598Assert.IsType<ReferenceExpression>(env["TLS_CONFIG_PFX"]); 636CertificatePath = ReferenceExpression.Create($"cert.pem"), 637KeyPath = ReferenceExpression.Create($"key.pem"), 638CertificateWithKeyPath = ReferenceExpression.Create($"cert-with-key.pem"), 639PfxPath = ReferenceExpression.Create($"cert.pfx"), 688CertificatePath = ReferenceExpression.Create($"cert.pem"), 689KeyPath = ReferenceExpression.Create($"key.pem"), 690CertificateWithKeyPath = ReferenceExpression.Create($"cert-with-key.pem"), 691PfxPath = ReferenceExpression.Create($"cert.pfx"), 734CertificatePath = ReferenceExpression.Create($"cert.pem"), 735KeyPath = ReferenceExpression.Create($"key.pem"), 736CertificateWithKeyPath = ReferenceExpression.Create($"cert-with-key.pem"), 737PfxPath = ReferenceExpression.Create($"cert.pfx"), 786CertificatePath = ReferenceExpression.Create($"cert.pem"), 787KeyPath = ReferenceExpression.Create($"key.pem"), 788CertificateWithKeyPath = ReferenceExpression.Create($"cert-with-key.pem"), 789PfxPath = ReferenceExpression.Create($"cert.pfx"), 845CertificatePath = ReferenceExpression.Create($"cert.pem"), 846KeyPath = ReferenceExpression.Create($"key.pem"), 847CertificateWithKeyPath = ReferenceExpression.Create($"cert-with-key.pem"), 848PfxPath = ReferenceExpression.Create($"cert.pfx"), 918CertificatePath = ReferenceExpression.Create($"cert.pem"), 919KeyPath = ReferenceExpression.Create($"key.pem"), 920CertificateWithKeyPath = ReferenceExpression.Create($"cert-with-key.pem"), 921PfxPath = ReferenceExpression.Create($"cert.pfx"), 1023CertificatePath = ReferenceExpression.Create($"cert.pem"), 1024KeyPath = ReferenceExpression.Create($"key.pem"), 1025CertificateWithKeyPath = ReferenceExpression.Create($"cert-with-key.pem"), 1026PfxPath = ReferenceExpression.Create($"cert.pfx"), 1114CertificatePath = ReferenceExpression.Create($"cert.pem"), 1115KeyPath = ReferenceExpression.Create($"key.pem"), 1116CertificateWithKeyPath = ReferenceExpression.Create($"cert-with-key.pem"), 1117PfxPath = ReferenceExpression.Create($"cert.pfx"),
Aspire.Hosting.Kafka (11)
KafkaBuilderExtensions.cs (6)
161var bootstrapServers = context.ExecutionContext.IsRunMode 164? ReferenceExpression.Create($"{endpoint.Resource.Name}:{endpoint.Property(EndpointProperty.TargetPort)}") 165: ReferenceExpression.Create($"{endpoint.Property(EndpointProperty.HostAndPort)}"); 244var advertisedListeners = context.ExecutionContext.IsRunMode 247? ReferenceExpression.Create($"PLAINTEXT://localhost:29092,PLAINTEXT_HOST://localhost:{primaryEndpoint.Property(EndpointProperty.Port)},PLAINTEXT_INTERNAL://{resource.Name}:{internalEndpoint.Property(EndpointProperty.TargetPort)}") 248: ReferenceExpression.Create($"PLAINTEXT://{primaryEndpoint.Property(EndpointProperty.Host)}:29092,PLAINTEXT_HOST://{primaryEndpoint.Property(EndpointProperty.HostAndPort)},PLAINTEXT_INTERNAL://{internalEndpoint.Property(EndpointProperty.HostAndPort)}");
KafkaServerResource.cs (5)
48public ReferenceExpression ConnectionStringExpression => 49ReferenceExpression.Create($"{PrimaryEndpoint.Property(EndpointProperty.HostAndPort)}"); 51IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 53yield return new("Host", ReferenceExpression.Create($"{Host}")); 54yield return new("Port", ReferenceExpression.Create($"{Port}"));
Aspire.Hosting.Keycloak (3)
KeycloakResource.cs (3)
34internal ReferenceExpression AdminReference => 36ReferenceExpression.Create($"{AdminUserNameParameter}") : 37ReferenceExpression.Create($"{DefaultAdmin}");
Aspire.Hosting.Kubernetes (116)
Annotations\HelmChartDescriptionAnnotation.cs (4)
12/// <param name="description">A <see cref="ReferenceExpression"/> representing the chart description value.</param> 13public sealed class HelmChartDescriptionAnnotation(ReferenceExpression description) : IResourceAnnotation 16/// Gets the Helm chart description as a <see cref="ReferenceExpression"/>. 18public ReferenceExpression Description { get; } = description ?? throw new ArgumentNullException(nameof(description));
Annotations\HelmChartNameAnnotation.cs (4)
12/// <param name="name">A <see cref="ReferenceExpression"/> representing the chart name value.</param> 13public sealed class HelmChartNameAnnotation(ReferenceExpression name) : IResourceAnnotation 16/// Gets the Helm chart name as a <see cref="ReferenceExpression"/>. 18public ReferenceExpression Name { get; } = name ?? throw new ArgumentNullException(nameof(name));
Annotations\HelmChartVersionAnnotation.cs (4)
12/// <param name="version">A <see cref="ReferenceExpression"/> representing the chart version value.</param> 13public sealed class HelmChartVersionAnnotation(ReferenceExpression version) : IResourceAnnotation 16/// Gets the Helm chart version as a <see cref="ReferenceExpression"/>. 18public ReferenceExpression Version { get; } = version ?? throw new ArgumentNullException(nameof(version));
Annotations\HelmReleaseNameAnnotation.cs (4)
12/// <param name="releaseName">A <see cref="ReferenceExpression"/> representing the release name value.</param> 13public sealed class HelmReleaseNameAnnotation(ReferenceExpression releaseName) : IResourceAnnotation 16/// Gets the Helm release name as a <see cref="ReferenceExpression"/>. 18public ReferenceExpression ReleaseName { get; } = releaseName ?? throw new ArgumentNullException(nameof(releaseName));
Annotations\KubernetesNamespaceAnnotation.cs (4)
12/// <param name="namespace">A <see cref="ReferenceExpression"/> representing the namespace value.</param> 13public sealed class KubernetesNamespaceAnnotation(ReferenceExpression @namespace) : IResourceAnnotation 16/// Gets the namespace value as a <see cref="ReferenceExpression"/>. 18public ReferenceExpression Namespace { get; } = @namespace ?? throw new ArgumentNullException(nameof(@namespace));
CertManagerExtensions.cs (6)
187ReferenceExpression.Create($"{serverUrl}"), 188ReferenceExpression.Create($"{email}")); 228builder.Resource.ExternalAccountBinding = new CertManagerExternalAccountBinding(ReferenceExpression.Create($"{keyId.Resource}"), hmacKey.Resource); 252ReferenceExpression.Create($"{serverUrl.Resource}"), 253ReferenceExpression.Create($"{email.Resource}")); 826&& g.GatewayAnnotations.TryGetValue(ClusterIssuerAnnotationKey, out var v)
CertManagerIssuerResource.cs (3)
86ReferenceExpression ServerUrl, 87ReferenceExpression Email) : CertManagerIssuerSpec; 92internal sealed record CertManagerExternalAccountBinding(ReferenceExpression KeyId, ParameterResource HmacKey);
HelmChartOptions.cs (20)
46var expression = ReferenceExpression.Create($"{@namespace}"); 61var expression = ReferenceExpression.Create($"{@namespace.Resource}"); 93var expression = ReferenceExpression.Create($"{releaseName}"); 108var expression = ReferenceExpression.Create($"{releaseName.Resource}"); 145var expression = ReferenceExpression.Create($"{version}"); 160var expression = ReferenceExpression.Create($"{version.Resource}"); 192var expression = ReferenceExpression.Create($"{name}"); 207var expression = ReferenceExpression.Create($"{name.Resource}"); 239var expression = ReferenceExpression.Create($"{description}"); 254var expression = ReferenceExpression.Create($"{description.Resource}");
KubernetesEnvironmentResource.cs (17)
209internal sealed record TlsSecretRequest(ReferenceExpression SecretName, ReferenceExpression Hostname, IResource Owner); 401public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) 405return ReferenceExpression.Create($"{resource.Name.ToServiceName()}"); 593/// Resolves a <see cref="ReferenceExpression"/> at deploy time. Used by pipeline steps 598private static async Task<string> ResolveExpressionAtDeployTimeAsync(ReferenceExpression expression, CancellationToken cancellationToken) 611/// Resolves a <see cref="ReferenceExpression"/> for inclusion in a Kubernetes manifest 625private async Task<string> ResolveExpressionAsync(ReferenceExpression expression, string owningResourceName, CancellationToken cancellationToken) 709IEnumerable<ReferenceExpression> hostnames, 715foreach (var hostname in hostnames) 1330foreach (var host in gateway.Hostnames) 1345foreach (var host in ingress.Hostnames) 1375private static List<(KubernetesGatewayResource Gateway, ReferenceExpression SecretName)> CollectGatewaysNeedingFqdnDiscovery( 1379var results = new List<(KubernetesGatewayResource Gateway, ReferenceExpression SecretName)>(); 1433List<(KubernetesGatewayResource Gateway, ReferenceExpression SecretName)> gatewaysNeedingDiscovery) 2208var seen = new HashSet<(ReferenceExpression SecretName, ReferenceExpression Hostname)>();
KubernetesGatewayExtensions.cs (9)
68builder.Resource.GatewayClassName = ReferenceExpression.Create($"{className}"); 87builder.Resource.GatewayClassName = ReferenceExpression.Create($"{className.Resource}"); 185builder.Resource.Hostnames.Add(ReferenceExpression.Create($"{hostname}")); 204builder.Resource.Hostnames.Add(ReferenceExpression.Create($"{hostname.Resource}")); 228SecretName: ReferenceExpression.Create($"{secretName}"))); 249SecretName: ReferenceExpression.Create($"{secretName.Resource}"))); 269SecretName: ReferenceExpression.Create($"{secretName}"))); 303builder.Resource.GatewayAnnotations[key] = ReferenceExpression.Create($"{value}"); 325builder.Resource.GatewayAnnotations[key] = ReferenceExpression.Create($"{value.Resource}");
KubernetesGatewayResource.cs (4)
53public ReferenceExpression? GatewayClassName { get; set; } 58internal List<ReferenceExpression> Hostnames { get; } = []; 73internal Dictionary<string, ReferenceExpression> GatewayAnnotations { get; } = []; 138ReferenceExpression SecretName);
KubernetesIngressExtensions.cs (9)
78builder.Resource.IngressClassName = ReferenceExpression.Create($"{className}"); 97builder.Resource.IngressClassName = ReferenceExpression.Create($"{className.Resource}"); 210builder.Resource.Hostnames.Add(ReferenceExpression.Create($"{hostname}")); 229builder.Resource.Hostnames.Add(ReferenceExpression.Create($"{hostname.Resource}")); 251SecretName: ReferenceExpression.Create($"{secretName}"))); 272SecretName: ReferenceExpression.Create($"{secretName.Resource}"))); 292SecretName: ReferenceExpression.Create($"{secretName}"))); 352builder.Resource.IngressAnnotations[key] = ReferenceExpression.Create($"{value}"); 374builder.Resource.IngressAnnotations[key] = ReferenceExpression.Create($"{value.Resource}");
KubernetesIngressResource.cs (4)
53public ReferenceExpression? IngressClassName { get; set; } 58internal List<ReferenceExpression> Hostnames { get; } = []; 76internal Dictionary<string, ReferenceExpression> IngressAnnotations { get; } = []; 139ReferenceExpression SecretName);
KubernetesPersistentVolumeExtensions.cs (7)
89builder.Resource.StorageClassName = ReferenceExpression.Create($"{storageClassName}"); 111builder.Resource.StorageClassName = ReferenceExpression.Create($"{storageClassName.Resource}"); 150builder.Resource.Capacity = ReferenceExpression.Create($"{capacity}"); 170builder.Resource.Capacity = ReferenceExpression.Create($"{capacity.Resource}"); 195builder.Resource.PersistentVolumeName = ReferenceExpression.Create($"{persistentVolumeName}"); 247builder.Resource.VolumeAnnotations[key] = ReferenceExpression.Create($"{value}"); 270builder.Resource.VolumeAnnotations[key] = ReferenceExpression.Create($"{value.Resource}");
KubernetesPersistentVolumeResource.cs (4)
91internal ReferenceExpression? StorageClassName { get; set; } 98internal ReferenceExpression? Capacity { get; set; } 103internal ReferenceExpression? PersistentVolumeName { get; set; } 118internal Dictionary<string, ReferenceExpression> VolumeAnnotations { get; } = [];
KubernetesPublishingContext.cs (2)
376private static bool CanResolveDuringPublish(ReferenceExpression expression) 381ReferenceExpression nested => CanResolveDuringPublish(nested),
KubernetesResource.cs (7)
549ep, [kubernetesEnvironmentResource, kubernetesEnvironmentResource.OwningComputeEnvironment], out var crossExpr)) 592epExpr, [kubernetesEnvironmentResource, kubernetesEnvironmentResource.OwningComputeEnvironment], out var crossExpr)) 609if (value is ReferenceExpression expr) 624var branch = string.Equals(conditionStr, expr.MatchValue, StringComparison.OrdinalIgnoreCase) 663private async Task<object> BuildHelmConditional(KubernetesEnvironmentContext context, DistributedApplicationExecutionContext executionContext, ReferenceExpression expr, ParameterResource conditionParam, bool embedded) 712private void AllocateBranchParameters(ReferenceExpression branch) 878ReferenceExpression expr => expr.ValueProviders.Any(IsUnresolvedAtPublishTime),
src\Shared\ComputeEnvironmentEndpointResolver.cs (4)
26/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint's URL by 46[NotNullWhen(true)] out ReferenceExpression? expression) 57/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint property by 77[NotNullWhen(true)] out ReferenceExpression? expression)
Aspire.Hosting.Kubernetes.Tests (38)
CertManagerTests.cs (1)
454CertManagerExtensions.ClusterIssuerAnnotationKey, out var value));
KubernetesDeployTests.cs (4)
1402context.EnvironmentVariables["CACHE_PASSWORD"] = ReferenceExpression.Create($"{cachePassword.Resource}"); 1613context.EnvironmentVariables["TLS_SUFFIX"] = ReferenceExpression.CreateConditional( 1616ReferenceExpression.Create($",ssl=true"), 1617ReferenceExpression.Create($",ssl=false"));
KubernetesEnvironmentResourceTests.cs (1)
127var endpointReferenceEx = env.Resource.GetHostAddressExpression(project.GetEndpoint("http"));
KubernetesPublisherTests.cs (32)
78var cs = builder.AddConnectionString("cs", ReferenceExpression.Create($"Url={param0}, Secret={param1}")); 309var cs = builder.AddConnectionString("api-cs", ReferenceExpression.Create($"Url={param0}, Secret={param1}")); 310var csPlain = builder.AddConnectionString("api-cs2", ReferenceExpression.Create($"host.local:80")); 311var manualAlias = builder.AddConnectionString("manual-db", ReferenceExpression.Create($"unused")); 935var output = ReferenceExpression.Create($"{new TestValueProvider("provisioned-value")}"); 937repositoryOutput ? ReferenceExpression.Create($"registry.example.com") : output, 1373context.EnvironmentVariables["FIRST"] = ReferenceExpression.CreateConditional( 1376ReferenceExpression.Create($"enabled"), 1377ReferenceExpression.Create($"disabled")); 1378context.EnvironmentVariables["SECOND"] = ReferenceExpression.CreateConditional( 1381ReferenceExpression.Create($"enabled"), 1382ReferenceExpression.Create($"disabled")); 1495var conditional = ReferenceExpression.CreateConditional( 1498ReferenceExpression.Create($",ssl=true"), 1499ReferenceExpression.Empty); 1503var conditionalFalse = ReferenceExpression.CreateConditional( 1506ReferenceExpression.Create($",ssl=true"), 1507ReferenceExpression.Create($",ssl=false")); 1560context.EnvironmentVariables["OPTIONS"] = ReferenceExpression.CreateConditional( 1563ReferenceExpression.Create($"user={user};password={password}"), 1564ReferenceExpression.Create($"user={user};disabled")); 1610var conditional = ReferenceExpression.CreateConditional( 1613ReferenceExpression.Create($",ssl=true"), 1614ReferenceExpression.Create($",ssl=false")); 1675var conditional = ReferenceExpression.CreateConditional( 1678ReferenceExpression.Create($"{tlsSuffix.Resource}"), 1679ReferenceExpression.Create($",ssl=false"));
Aspire.Hosting.Milvus (14)
MilvusDatabaseResource.cs (4)
33public ReferenceExpression ConnectionStringExpression => 34ReferenceExpression.Create($"{Parent};Database={DatabaseName}"); 47IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 49new("DatabaseName", ReferenceExpression.Create($"{DatabaseName}"))
MilvusServerResource.cs (10)
52public ReferenceExpression Token => ReferenceExpression.Create($"root:{ApiKeyParameter}"); 60public ReferenceExpression ConnectionStringExpression => 61ReferenceExpression.Create( 70public ReferenceExpression UriExpression => ReferenceExpression.Create($"{PrimaryEndpoint.Property(EndpointProperty.Url)}"); 84IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 86yield return new("Host", ReferenceExpression.Create($"{Host}")); 87yield return new("Port", ReferenceExpression.Create($"{Port}")); 88yield return new("Token", ReferenceExpression.Create($"{Token}"));
Aspire.Hosting.MongoDB (33)
MongoDBDatabaseResource.cs (4)
25public ReferenceExpression ConnectionStringExpression => Parent.BuildConnectionString(DatabaseName); 33public ReferenceExpression UriExpression => Parent.BuildConnectionString(DatabaseName); 51IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 53new("DatabaseName", ReferenceExpression.Create($"{DatabaseName}")),
MongoDBServerResource.cs (17)
80public ReferenceExpression UserNameReference => 82ReferenceExpression.Create($"{UserNameParameter}") : 83ReferenceExpression.Create($"{DefaultUserName}"); 88public ReferenceExpression ConnectionStringExpression => BuildConnectionString(); 96public ReferenceExpression UriExpression => BuildConnectionString(); 123private static ReferenceExpression AuthenticationDatabaseReference => ReferenceExpression.Create($"{DefaultAuthenticationDatabase}"); 125private static ReferenceExpression AuthenticationMechanismReference => ReferenceExpression.Create($"{DefaultAuthenticationMechanism}"); 127internal ReferenceExpression BuildConnectionString(string? databaseName = null) 182? ReferenceExpression.Create($"&tls=true") 183: ReferenceExpression.Create($"?tls=true"), 184disabledValue: ReferenceExpression.Empty)}"); 201IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 203yield return new("Host", ReferenceExpression.Create($"{Host}")); 204yield return new("Port", ReferenceExpression.Create($"{Port}")); 209yield return new("Password", ReferenceExpression.Create($"{PasswordParameter}"));
ReplicaSet\MongoDBReplicaSetResource.cs (12)
32public ReferenceExpression ConnectionStringExpression => BuildConnectionString(); 58public ReferenceExpression SharedUserNameReference => 60? ReferenceExpression.Create($"{MongoDBServerResource.DefaultUserName}") 61: ReferenceExpression.Create($"{SharedUserNameParameter}"); 79private ReferenceExpression BuildConnectionString() 122enabledValue: ReferenceExpression.Create($"&tls=true"), 123disabledValue: ReferenceExpression.Empty)}"); 128IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 134yield return new("Password", ReferenceExpression.Create($"{SharedPasswordParameter}")); 135yield return new("AuthenticationDatabase", ReferenceExpression.Create($"{MongoDBServerResource.DefaultAuthenticationDatabase}")); 136yield return new("AuthenticationMechanism", ReferenceExpression.Create($"{MongoDBServerResource.DefaultAuthenticationMechanism}")); 137yield return new("ReplicaSetName", ReferenceExpression.Create($"{Name}"));
Aspire.Hosting.MongoDB.Tests (8)
MongoDBPublicApiTests.cs (6)
379var keyValue = ReferenceExpression.Create($"test-key"); 396var keyValue = ReferenceExpression.Create($"test-key"); 420var keyValue = ReferenceExpression.Create($"test-key");
MongoDBReplCommandTests.cs (2)
119CertificateBundlePath = ReferenceExpression.Create($"{bundlePath}"), 120CertificateDirectoriesPath = ReferenceExpression.Create($"{"/certificates"}"),
Aspire.Hosting.MySql (18)
MySqlDatabaseResource.cs (6)
31public ReferenceExpression ConnectionStringExpression 40return ReferenceExpression.Create($"{Parent};{connectionStringBuilder.ToString()}"); 50public ReferenceExpression UriExpression => Parent.BuildUri(DatabaseName); 59public ReferenceExpression JdbcConnectionString => Parent.BuildJdbcConnectionString(DatabaseName); 72IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 74new("DatabaseName", ReferenceExpression.Create($"{DatabaseName}")),
MySqlServerResource.cs (12)
54public ReferenceExpression ConnectionStringExpression => 55ReferenceExpression.Create( 58private static ReferenceExpression UserNameReference => ReferenceExpression.Create($"{DefaultUserName}"); 66public ReferenceExpression UriExpression => BuildUri(); 68internal ReferenceExpression BuildUri(string? databaseName = null) 82internal ReferenceExpression BuildJdbcConnectionString(string? databaseName = null) 106public ReferenceExpression JdbcConnectionString => BuildJdbcConnectionString(); 121IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 123yield return new("Host", ReferenceExpression.Create($"{Host}")); 124yield return new("Port", ReferenceExpression.Create($"{Port}")); 126yield return new("Password", ReferenceExpression.Create($"{PasswordParameter}"));
Aspire.Hosting.Nats (10)
NatsServerResource.cs (10)
57public ReferenceExpression UserNameReference => 59ReferenceExpression.Create($"{UserNameParameter}") : 60ReferenceExpression.Create($"{DefaultUserName}"); 70public ReferenceExpression ConnectionStringExpression => BuildConnectionString(); 78public ReferenceExpression UriExpression => BuildConnectionString(); 80internal ReferenceExpression BuildConnectionString() 102IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 104yield return new("Host", ReferenceExpression.Create($"{Host}")); 105yield return new("Port", ReferenceExpression.Create($"{Port}")); 110yield return new("Password", ReferenceExpression.Create($"{PasswordParameter}"));
Aspire.Hosting.OpenAI (11)
OpenAIModelResource.cs (4)
42public ReferenceExpression ConnectionStringExpression => 43ReferenceExpression.Create($"{Parent};Model={Model}"); 45IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 47new("ModelName", ReferenceExpression.Create($"{Model}")),
OpenAIResource.cs (7)
40private ReferenceExpression EndpointExpression => ReferenceExpression.Create($"{Endpoint}"); 45public ReferenceExpression ConnectionStringExpression => 46ReferenceExpression.Create($"Endpoint={EndpointExpression};Key={Key}"); 54public ReferenceExpression UriExpression => EndpointExpression; 56IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 60yield return new("Key", ReferenceExpression.Create($"{Key}"));
Aspire.Hosting.Oracle (18)
OracleDatabaseResource.cs (6)
30public ReferenceExpression ConnectionStringExpression => 31ReferenceExpression.Create($"{Parent}/{DatabaseName}"); 39public ReferenceExpression UriExpression => Parent.BuildUri(DatabaseName); 48public ReferenceExpression JdbcConnectionString => Parent.BuildJdbcConnectionString(DatabaseName); 61IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 63new("DatabaseName", ReferenceExpression.Create($"{DatabaseName}")),
OracleDatabaseServerResource.cs (12)
51public ReferenceExpression ConnectionStringExpression => 52ReferenceExpression.Create( 61public ReferenceExpression UserNameReference => ReferenceExpression.Create($"{DefaultUserName}"); 69public ReferenceExpression UriExpression => BuildUri(); 71internal ReferenceExpression BuildUri(string? databaseName = null) 85internal ReferenceExpression BuildJdbcConnectionString(string? databaseName = null) 107public ReferenceExpression JdbcConnectionString => BuildJdbcConnectionString(); 121IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 123yield return new("Host", ReferenceExpression.Create($"{Host}")); 124yield return new("Port", ReferenceExpression.Create($"{Port}")); 126yield return new("Password", ReferenceExpression.Create($"{PasswordParameter}"));
Aspire.Hosting.Orleans.Tests (2)
OrleansProviderTypeTests.cs (2)
114public ReferenceExpression ConnectionStringExpression => 115ReferenceExpression.Create($"{ConnectionString}");
Aspire.Hosting.PostgreSQL (21)
PostgresDatabaseResource.cs (6)
31public ReferenceExpression ConnectionStringExpression 40return ReferenceExpression.Create($"{Parent};{connectionStringBuilder.ToString()}"); 60public ReferenceExpression UriExpression => Parent.BuildUri(DatabaseName); 69public ReferenceExpression JdbcConnectionString => Parent.BuildJdbcConnectionString(DatabaseName); 71IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 73new("DatabaseName", ReferenceExpression.Create($"{DatabaseName}")),
PostgresServerResource.cs (15)
46public ReferenceExpression UserNameReference => 48ReferenceExpression.Create($"{UserNameParameter}") : 49ReferenceExpression.Create($"{DefaultUserName}"); 56private ReferenceExpression ConnectionString => 57ReferenceExpression.Create( 63public ReferenceExpression ConnectionStringExpression 122public ReferenceExpression UriExpression => BuildUri(); 124internal ReferenceExpression BuildUri(string? databaseName = null) 146internal ReferenceExpression BuildJdbcConnectionString(string? databaseName = null) 167public ReferenceExpression JdbcConnectionString => BuildJdbcConnectionString(); 169IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 171new ("Host", ReferenceExpression.Create($"{Host}")), 172new ("Port", ReferenceExpression.Create($"{Port}")), 173new ("Username", ReferenceExpression.Create($"{UserNameReference}")), 174new ("Password", ReferenceExpression.Create($"{PasswordParameter}")),
Aspire.Hosting.Qdrant (15)
QdrantBuilderExtensions.cs (1)
188var httpConnectionStringExpression = qdrantResource.Resource.HttpConnectionStringExpression;
QdrantServerResource.cs (14)
67public ReferenceExpression ConnectionStringExpression => 68ReferenceExpression.Create( 77public ReferenceExpression UriExpression => ReferenceExpression.Create($"{PrimaryEndpoint.Property(EndpointProperty.Url)}"); 82public ReferenceExpression HttpConnectionStringExpression => 83ReferenceExpression.Create( 92public ReferenceExpression HttpUriExpression => ReferenceExpression.Create($"{HttpEndpoint.Property(EndpointProperty.Url)}"); 94IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 96yield return new("GrpcHost", ReferenceExpression.Create($"{GrpcHost}")); 97yield return new("GrpcPort", ReferenceExpression.Create($"{GrpcPort}")); 98yield return new("HttpHost", ReferenceExpression.Create($"{HttpHost}")); 99yield return new("HttpPort", ReferenceExpression.Create($"{HttpPort}")); 100yield return new("ApiKey", ReferenceExpression.Create($"{ApiKeyParameter}"));
Aspire.Hosting.RabbitMQ (9)
RabbitMQServerResource.cs (9)
63public ReferenceExpression UserNameReference => 65ReferenceExpression.Create($"{UserNameParameter}") : 66ReferenceExpression.Create($"{DefaultUserName}"); 76public ReferenceExpression ConnectionStringExpression => UriExpression; 84public ReferenceExpression UriExpression 107IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 109yield return new("Host", ReferenceExpression.Create($"{Host}")); 110yield return new("Port", ReferenceExpression.Create($"{Port}")); 112yield return new("Password", ReferenceExpression.Create($"{PasswordParameter}"));
Aspire.Hosting.Radius (33)
Publishing\RadiusInfrastructureBuilder.cs (19)
3011/// <see cref="ReferenceExpression"/>s, with nothing in the value identifying where they came 3035/// <c>GetConnectionProperties()</c> builds a fresh <see cref="ReferenceExpression"/>, and fresh 3052rawValue is not ReferenceExpression expression) 3204var expression = FindConnectionProperty(child, "databasename"); 3209while (expression is { Format: "{0}", ValueProviders: [ReferenceExpression nested] }) 3301while (expression.Format == "{0}" && expression.ValueProviders is [ReferenceExpression nested]) 3311private static ReferenceExpression? FindConnectionProperty(IResourceWithConnectionString resource, string key) 4176case ReferenceExpression referenceExpression: 4259/// That form reaches environment resolution as a bare <see cref="ReferenceExpression"/>: the 4274private void RecordConnectionStringExpressionConsumption(ReferenceExpression expression, IResource owner) 4341/// Splices a composite <see cref="ReferenceExpression"/> into ordered parts by interleaving 4342/// its literal <see cref="ReferenceExpression.Format"/> chunks with the recursively-resolved 4345private async Task ResolveReferenceExpressionPartsAsync(ReferenceExpression expression, IResource owner, List<EnvPart> parts, IResource referencedResource, bool allowRecipeSubstitutions = true) 4414var branch = string.Equals(conditionValue, expression.MatchValue, StringComparison.OrdinalIgnoreCase) 4507/// so <see cref="ParameterResource"/>, <see cref="ReferenceExpression"/> and 4540case ReferenceExpression { IsConditional: true } conditional: 4545case ReferenceExpression referenceExpression: 4875/// Resolves a <see cref="ReferenceExpression"/> produced by the environment's endpoint 4879private static string ResolveHostExpression(ReferenceExpression expression) =>
RadiusEnvironmentResource.cs (14)
129public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) 162return ReferenceExpression.Create($"{serviceName}.{targetNamespace}.svc.cluster.local"); 169ReferenceExpression IComputeEnvironmentResource.GetEndpointPropertyExpression(EndpointReferenceExpression endpointReferenceExpression) 197var host = new Lazy<ReferenceExpression>(() => GetHostAddressExpression(endpointReference)); 202? ReferenceExpression.Create($"{scheme}://{host.Value}") 203: ReferenceExpression.Create($"{scheme}://{host.Value}:{RadiusServiceDiscovery.ToInvariantString(port.Value)}"), 205EndpointProperty.Port => GuardedAddress(endpointReference, () => ReferenceExpression.Create($"{RadiusServiceDiscovery.ToInvariantString(port.Value)}")), 212? ReferenceExpression.Create($"{RadiusServiceDiscovery.ToInvariantString(targetPort)}") 213: ReferenceExpression.Create($"{new ContainerPortReference(endpointReference.Resource)}")), 214EndpointProperty.Scheme => ReferenceExpression.Create($"{scheme}"), 215EndpointProperty.HostAndPort => ReferenceExpression.Create($"{host.Value}:{RadiusServiceDiscovery.ToInvariantString(port.Value)}"), 216EndpointProperty.TlsEnabled => ReferenceExpression.Create($"{(endpoint.TlsEnabled ? bool.TrueString : bool.FalseString)}"), 222private static ReferenceExpression GuardedAddress(EndpointReference endpointReference, Func<ReferenceExpression> build)
Aspire.Hosting.Radius.Tests (58)
Publishing\BackingResourceContractTests.cs (2)
192var expression = environment.GetHostAddressExpression(backend.GetEndpoint("http")); 216var expression = ((IComputeEnvironmentResource)environment)
Publishing\BackingResourceValueResolutionTests.cs (51)
455.WithEnvironment("MODE_URL", ReferenceExpression.CreateConditional( 458ReferenceExpression.Create($"primary"), 459ReferenceExpression.Create($"secondary"))) 484.WithEnvironment("MODE_URL", ReferenceExpression.CreateConditional( 487ReferenceExpression.Create($"primary"), 488ReferenceExpression.Create($"secondary"))))); 503.WithEnvironment("MODE_URL", ReferenceExpression.CreateConditional( 506ReferenceExpression.Create($"primary"), 507ReferenceExpression.Create($"secondary"))) 529.WithEnvironment("MODE_URL", ReferenceExpression.CreateConditional( 532ReferenceExpression.Create($"primary"), 533ReferenceExpression.Create($"secondary"))); 540/// <see cref="ReferenceExpression"/> also carries <see cref="IManifestExpressionProvider"/>, so 551.WithEnvironment("MODE_URL", ReferenceExpression.CreateConditional( 552ReferenceExpression.Create($"{mode.Resource}"), 554ReferenceExpression.Create($"primary"), 555ReferenceExpression.Create($"secondary"))); 563/// <see cref="ReferenceExpression"/> is still recognised as unknowable while publishing. Without 571.WithEnvironment("MODE_URL", ReferenceExpression.CreateConditional( 572ReferenceExpression.Create($"{new ThrowingDeploymentOutput(new InvalidOperationException("not deployed yet"))}"), 574ReferenceExpression.Create($"primary"), 575ReferenceExpression.Create($"secondary"))) 597.WithEnvironment("MODE_URL", ReferenceExpression.CreateConditional( 600ReferenceExpression.Create($"primary"), 601ReferenceExpression.Create($"secondary"))); 624.WithEnvironment("MODE_URL", ReferenceExpression.CreateConditional( 627ReferenceExpression.Create($"primary"), 628ReferenceExpression.Create($"secondary"))); 645.WithEnvironment("MODE_URL", ReferenceExpression.CreateConditional( 646ReferenceExpression.CreateConditional( 649ReferenceExpression.Create($"primary"), 650ReferenceExpression.Create($"secondary")), 652ReferenceExpression.Create($"primary"), 653ReferenceExpression.Create($"secondary"))) 996/// AppHost author can build the identical <see cref="ReferenceExpression"/> themselves, because 1013.WithEnvironment("ADMIN_PASSWORD", ReferenceExpression.Create($"{shared}")); 1090.WithEnvironment("DB_PRIMARY_PASSWORD", ReferenceExpression.Create($"{shared}")); 1194.WithEnvironment("PORT_URL", ReferenceExpression.Create($"tcp://cache:{port:uri}/")); 1214var conditional = ReferenceExpression.CreateConditional( 1217ReferenceExpression.Create($"primary-{cache.GetEndpoint("tcp").Property(EndpointProperty.Host)}"), 1218ReferenceExpression.Create($"secondary-fallback")); 1355.WithEnvironment("TOKEN", ReferenceExpression.Create($"{token:json}")); 1405new("username", ReferenceExpression.Create($"app")), 1406new("password", ReferenceExpression.Create($"{unresolvable}")), 1454ConnectionStringExpression = ReferenceExpression.Create($"{inner};{new ConnectionStringReference(this, false)}"); 1457public ReferenceExpression ConnectionStringExpression { get; } 1504private sealed class PostgresServerResource(string name, KeyValuePair<string, ReferenceExpression>[] connectionProperties) 1507public ReferenceExpression ConnectionStringExpression => ReferenceExpression.Create($"Host=pg"); 1509public IEnumerable<KeyValuePair<string, ReferenceExpression>> GetConnectionProperties() => connectionProperties;
Publishing\ConnectionStringPropagationTests.cs (1)
102var connection = builder.AddConnectionString("my-db", ReferenceExpression.Create($"Host=example"));
RadiusEnvironmentResourceTests.cs (4)
64var expression = ((IComputeEnvironmentResource)environment).GetHostAddressExpression(endpoint); 93var expression = ((IComputeEnvironmentResource)radiusEnv) 148var expression = ((IComputeEnvironmentResource)radiusEnv) 170var expression = ((IComputeEnvironmentResource)radiusEnv)
Aspire.Hosting.Redis (9)
RedisResource.cs (9)
84private ReferenceExpression BuildConnectionString() 95enabledValue: ReferenceExpression.Create($",ssl=true"), 96disabledValue: ReferenceExpression.Empty)}"); 104public ReferenceExpression ConnectionStringExpression 143public ReferenceExpression UriExpression 164IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 166yield return new("Host", ReferenceExpression.Create($"{Host}")); 167yield return new("Port", ReferenceExpression.Create($"{Port}")); 171yield return new("Password", ReferenceExpression.Create($"{PasswordParameter}"));
Aspire.Hosting.Redis.Tests (5)
AddRedisTests.cs (5)
943var connectionStringExpression = redis.Resource.ConnectionStringExpression; 958var uriExpression = redis.Resource.UriExpression; 997var expressionBeforeTls = redis.Resource.ConnectionStringExpression; 1023var expressionAfterTls = redis.Resource.ConnectionStringExpression; 1042var connectionStringExpression = redis.Resource.ConnectionStringExpression;
Aspire.Hosting.RemoteHost.Tests (56)
AtsMarshallerTests.cs (40)
829var reference = Assert.Single(dto.AddressPrefixReferences); 1326public List<ReferenceExpression> AddressPrefixReferences { get; init; } = []; 1335var whenTrue = ReferenceExpression.Create($",ssl=true"); 1336var whenFalse = ReferenceExpression.Empty; 1337var conditional = ReferenceExpression.CreateConditional(condition, bool.TrueString, whenTrue, whenFalse); 1354var whenTrue = ReferenceExpression.Create($",ssl=true"); 1355var whenFalse = ReferenceExpression.Empty; 1356var conditional = ReferenceExpression.CreateConditional(condition, bool.TrueString, whenTrue, whenFalse); 1374var whenTrue = ReferenceExpression.Create($",ssl=true"); 1375var whenFalse = ReferenceExpression.Empty; 1376var conditional = ReferenceExpression.CreateConditional(condition, bool.TrueString, whenTrue, whenFalse); 1381var retrievedConditional = Assert.IsType<ReferenceExpression>(retrieved); 1393var whenTrue = ReferenceExpression.Create($",ssl=true"); 1394var whenFalse = ReferenceExpression.Empty; 1395var conditional = ReferenceExpression.CreateConditional(condition, bool.TrueString, whenTrue, whenFalse); 1400var retrievedConditional = Assert.IsType<ReferenceExpression>(retrieved); 1453var result = marshaller.UnmarshalFromJson(json, typeof(ReferenceExpression), context); 1454var cre = Assert.IsType<ReferenceExpression>(result); 1494var result = marshaller.UnmarshalFromJson(json, typeof(ReferenceExpression), context); 1495var cre = Assert.IsType<ReferenceExpression>(result); 1536var result = marshaller.UnmarshalFromJson(json, typeof(ReferenceExpression), context); 1537var cre = Assert.IsType<ReferenceExpression>(result); 1576marshaller.UnmarshalFromJson(json, typeof(ReferenceExpression), context));
CapabilityDispatcherTests.cs (5)
2888public ReferenceExpression ConnectionStringExpression => 2889ReferenceExpression.Create($"Host=localhost;Database={Name}"); 2891public IEnumerable<KeyValuePair<string, ReferenceExpression>> GetConnectionProperties() 2893yield return new("Host", ReferenceExpression.Create($"localhost")); 2894yield return new("Database", ReferenceExpression.Create($"{Name}"));
HandleRegistryTests.cs (4)
348var conditional = ReferenceExpression.CreateConditional( 349condition, bool.TrueString, ReferenceExpression.Create($",ssl=true"), ReferenceExpression.Empty);
ReferenceExpressionRefTests.cs (7)
118var expr = exprRef.ToReferenceExpression(handles, "test/cap", "param"); 143var expr = exprRef.ToReferenceExpression(handles, "test/cap", "param"); 180var expr = exprRef.ToReferenceExpression(handles, "test/cap", "param"); 203var expr = exprRef.ToReferenceExpression(handles, "test/cap", "param"); 224var expr = exprRef.ToReferenceExpression(handles, "test/cap", "param"); 252public ReferenceExpression ToReferenceExpression(HandleRegistry handles, string capabilityId, string paramName) 274return (ReferenceExpression)exprRef!.ToReferenceExpression(handles, capabilityId, paramName);
Aspire.Hosting.Seq (7)
SeqResource.cs (7)
35public ReferenceExpression ConnectionStringExpression => 36ReferenceExpression.Create($"{PrimaryEndpoint.Property(EndpointProperty.Url)}"); 44public ReferenceExpression UriExpression => ReferenceExpression.Create($"{PrimaryEndpoint.Property(EndpointProperty.Url)}"); 46IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 48yield return new("Host", ReferenceExpression.Create($"{Host}")); 49yield return new("Port", ReferenceExpression.Create($"{Port}"));
Aspire.Hosting.SqlServer (22)
SqlServerDatabaseResource.cs (7)
30public ReferenceExpression ConnectionStringExpression 39return ReferenceExpression.Create($"{Parent};{connectionStringBuilder.ToString()}"); 49public ReferenceExpression UriExpression => 50ReferenceExpression.Create($"{Parent.UriExpression}/{DatabaseName:uri}"); 59public ReferenceExpression JdbcConnectionString => Parent.BuildJdbcConnectionString(DatabaseName); 72IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => 74new("DatabaseName", ReferenceExpression.Create($"{DatabaseName}")),
SqlServerServerResource.cs (15)
48private ReferenceExpression ConnectionString => 49ReferenceExpression.Create( 58public ReferenceExpression UserNameReference => ReferenceExpression.Create($"{DefaultUserName}"); 66public ReferenceExpression UriExpression => 67ReferenceExpression.Create($"mssql://{DefaultUserName:uri}:{PasswordParameter:uri}@{Host}:{Port}"); 69internal ReferenceExpression BuildJdbcConnectionString(string? databaseName = null) 79var databaseNameReference = ReferenceExpression.Create($"{databaseName:uri}"); 96public ReferenceExpression JdbcConnectionString => BuildJdbcConnectionString(); 101public ReferenceExpression ConnectionStringExpression 152IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 154yield return new("Host", ReferenceExpression.Create($"{Host}")); 155yield return new("Port", ReferenceExpression.Create($"{Port}")); 157yield return new("Password", ReferenceExpression.Create($"{PasswordParameter}"));
Aspire.Hosting.Tests (237)
AddConnectionStringTests.cs (5)
23appBuilder.AddConnectionString("mycs", ReferenceExpression.Create($"Endpoint={endpoint};Key={key}")); 52appBuilder.AddConnectionString("testcs", ReferenceExpression.Create($"Endpoint={endpoint};Key={key}")); 80ReferenceExpression.Create($"Endpoint={redis.GetEndpoint("tcp")};key={key};{rwl}")); 101public ReferenceExpression ConnectionStringExpression => 102ReferenceExpression.Create($"ResourceWithoutLifetime");
ComputeEnvironmentEndpointResolverTests.cs (8)
24endpoint.Property(EndpointProperty.Url), [currentEnv.Resource], out var expression); 45endpoint, [currentEnv.Resource], out var expression); 63endpoint.Property(EndpointProperty.Url), [currentEnv.Resource], out var expression); 82endpoint.Property(EndpointProperty.Url), [currentEnv.Resource], out var expression); 99endpoint.Property(EndpointProperty.Url), [currentEnv.Resource], out var expression); 122endpoint.Property(EndpointProperty.Url), [currentEnv.Resource], out var expression); 160public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) => 161ReferenceExpression.Create($"{endpointReference.Resource.Name}.example.com");
ComputeEnvironmentValidationTests.cs (3)
78var expression = environment.GetEndpointPropertyExpression(endpointReference.Property(property)); 109public ReferenceExpression GetHostAddressExpression(EndpointReference endpointReference) => 110ReferenceExpression.Create($"{endpointReference.Resource.Name}.example.com");
ConditionalReferenceExpressionTests.cs (35)
14var whenTrue = ReferenceExpression.Create($",ssl=true"); 15var whenFalse = ReferenceExpression.Empty; 17var expr = ReferenceExpression.CreateConditional(condition, bool.TrueString, whenTrue, whenFalse); 27var whenTrue = ReferenceExpression.Create($",ssl=true"); 28var whenFalse = ReferenceExpression.Empty; 30var expr = ReferenceExpression.CreateConditional(condition, bool.TrueString, whenTrue, whenFalse); 40var whenTrue = ReferenceExpression.Create($",ssl=true"); 41var whenFalse = ReferenceExpression.Empty; 43var expr = ReferenceExpression.CreateConditional(condition, bool.TrueString, whenTrue, whenFalse); 53var whenTrue = ReferenceExpression.Create($",ssl=true"); 54var whenFalse = ReferenceExpression.Empty; 56var conditional = ReferenceExpression.CreateConditional(condition, bool.TrueString, whenTrue, whenFalse); 61var expression = builder.Build(); 82var whenTrue = ReferenceExpression.Create($",ssl=true"); 83var whenFalse = ReferenceExpression.Empty; 85var expr = ReferenceExpression.CreateConditional(condition, bool.TrueString, whenTrue, whenFalse); 94var expr = ReferenceExpression.CreateConditional(new TestValueProvider(bool.TrueString), bool.TrueString, ReferenceExpression.Empty, ReferenceExpression.Empty);
ConnectionPropertiesExtensionsTests.cs (14)
16new KeyValuePair<string, ReferenceExpression>("Host", ReferenceExpression.Create($"resourceHost")), 17new KeyValuePair<string, ReferenceExpression>("Port", ReferenceExpression.Create($"8080")), 22new KeyValuePair<string, ReferenceExpression>("Port", ReferenceExpression.Create($"9090")), 23new KeyValuePair<string, ReferenceExpression>("Username", ReferenceExpression.Create($"user")), 39private sealed class TestResource(string name, IEnumerable<KeyValuePair<string, ReferenceExpression>> properties) 42private readonly IReadOnlyList<KeyValuePair<string, ReferenceExpression>> _properties = new List<KeyValuePair<string, ReferenceExpression>>(properties); 44public ReferenceExpression ConnectionStringExpression { get; } = ReferenceExpression.Create($"{name}.connectionString"); 46IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() => _properties;
ContainerImagePushOptionsTests.cs (6)
248public ReferenceExpression Name => ReferenceExpression.Create($"{_name}"); 249public ReferenceExpression Endpoint => ReferenceExpression.Create($"{_endpoint}"); 250public ReferenceExpression? Repository => _repository is not null ? ReferenceExpression.Create($"{_repository}") : null;
Dcp\DcpExecutorTests.cs (1)
10206ReferenceExpression.Create(
DistributedApplicationTests.cs (5)
1125.WithEnvironment("INITIAL_REFERENCE_EXPRESSION", ReferenceExpression.Create($"{value}")) 1132var initialRE = Assert.IsType<ReferenceExpression>(ctx.EnvironmentVariables["INITIAL_REFERENCE_EXPRESSION"]); 1133ctx.EnvironmentVariables["INITIAL_REFERENCE_EXPRESSION"] = ReferenceExpression.Create($"{initialRE}_AppendedInCallback"); 1171.WithEnvironment("INITIAL_REFERENCE_EXPRESSION", ReferenceExpression.Create($"{value}"))
ExecutableResourceTests.cs (2)
123public ReferenceExpression ConnectionStringExpression => 124ReferenceExpression.Create($"{connectionString}");
ExecutionConfigurationGathererTests.cs (11)
508var bundlePath = ctx.CreateCustomBundle((certs, ct) => 534ReferenceExpression? capturedBundlePath = null; 571var bundle1 = ctx.CreateCustomBundle((certs, ct) => 573var bundle2 = ctx.CreateCustomBundle((certs, ct) => 609var bundlePath = ctx.CreateCustomBundle((certificates, ct) => 942CertificateBundlePath = ReferenceExpression.Create($"/etc/ssl/certs/ca-bundle.crt"), 943CertificateDirectoriesPath = ReferenceExpression.Create($"/etc/ssl/certs"), 953CertificatePath = ReferenceExpression.Create($"/etc/ssl/certs/server.crt"), 954KeyPath = ReferenceExpression.Create($"/etc/ssl/private/server.key"), 955CertificateWithKeyPath = ReferenceExpression.Create($"/etc/ssl/certs/server.pem"), 956PfxPath = ReferenceExpression.Create($"/etc/ssl/certs/server.pfx")
ExpressionResolverTests.cs (17)
326public ReferenceExpression ConnectionStringExpression => 327ReferenceExpression.Create($"{PrimaryEndpoint.Property(EndpointProperty.Url)}"); 344Dictionary<string, ReferenceExpression> Expressions { get; } 351{ "TwoFullEndpoints", ReferenceExpression.Create($"Test1={Endpoint1.Property(EndpointProperty.Scheme)}://{Endpoint1.Property(EndpointProperty.IPV4Host)}:{Endpoint1.Property(EndpointProperty.Port)}/;Test2={Endpoint2.Property(EndpointProperty.Scheme)}://{Endpoint2.Property(EndpointProperty.Host)}:{Endpoint2.Property(EndpointProperty.Port)}/;") }, 352{ "Url", ReferenceExpression.Create($"Url={Endpoint1.Property(EndpointProperty.Url)};") }, 353{ "Url2", ReferenceExpression.Create($"Url={Endpoint1};") }, 354{ "OnlyHost", ReferenceExpression.Create($"Host={Endpoint1.Property(EndpointProperty.Host)};") }, 355{ "OnlyPort", ReferenceExpression.Create($"Port={Endpoint1.Property(EndpointProperty.Port)};") }, 356{ "HostAndPort", ReferenceExpression.Create($"HostPort={Endpoint1.Property(EndpointProperty.HostAndPort)}") }, 357{ "PortBeforeHost", ReferenceExpression.Create($"Port={Endpoint1.Property(EndpointProperty.Port)};Host={Endpoint1.Property(EndpointProperty.Host)};") }, 358{ "FullAndPartial", ReferenceExpression.Create($"Test1={Endpoint1.Property(EndpointProperty.Scheme)}://{Endpoint1.Property(EndpointProperty.IPV4Host)}:{Endpoint1.Property(EndpointProperty.Port)}/;Test2={Endpoint2.Property(EndpointProperty.Scheme)}://localhost:{Endpoint2.Property(EndpointProperty.Port)}/;") }, 359{ "Empty", ReferenceExpression.Empty }, 360{ "String", ReferenceExpression.Create($"String") }, 361{ "SecretParameter", ReferenceExpression.Create("SecretParameter", [new ParameterResource("SecretParameter", _ => "SecretParameter", secret: true)], [], [null]) }, 362{ "NonSecretParameter", ReferenceExpression.Create("NonSecretParameter", [new ParameterResource("NonSecretParameter", _ => "NonSecretParameter", secret: false)], [], [null]) }, 363{ "UrlEncodedHost", ReferenceExpression.Create($"Host={Endpoint3.Property(EndpointProperty.Host):uri};") }, 367public ReferenceExpression ConnectionStringExpression => Expressions[_exprName];
Orchestrator\ApplicationOrchestratorTests.cs (18)
500var unresolvedProperty = ReferenceExpression.Create($"{new ThrowingValueProvider()}"); 1045var connectionString = builder.AddConnectionString("cs", ReferenceExpression.Create($"Endpoint={referenced.Resource}")); 1078var waiter = builder.AddConnectionString("waiter", ReferenceExpression.Create($"Host=localhost;Port=5678")) 1238public ReferenceExpression ConnectionStringExpression => ReferenceExpression.Create($"{Name}-connection-string"); 1262protected abstract ReferenceExpression ConnectionString { get; } 1264public ReferenceExpression ConnectionStringExpression 1280protected override ReferenceExpression ConnectionString => 1281ReferenceExpression.Create($"Server=localhost:8000"); 1294protected override ReferenceExpression ConnectionString => 1295ReferenceExpression.Create($"{parent};{SubConnectionString}"); 1300private sealed class TestResourceWithConnectionString(string name, string connectionString, string? databaseName = null, string? host = null, ReferenceExpression? unresolvedProperty = null) 1303public ReferenceExpression ConnectionStringExpression => ReferenceExpression.Create($"{connectionString}"); 1310public IEnumerable<KeyValuePair<string, ReferenceExpression>> GetConnectionProperties() 1314yield return new("DatabaseName", ReferenceExpression.Create($"{databaseName}")); 1319yield return new("Host", ReferenceExpression.Create($"{host}"));
ProjectResourceBuilderExtensionTests.cs (6)
411var path = ReferenceExpression.Create($"{context.PfxPath}"); 531CertificatePath = ReferenceExpression.Create($"/etc/ssl/certs/server.crt"), 532KeyPath = ReferenceExpression.Create($"/etc/ssl/private/server.key"), 533CertificateWithKeyPath = ReferenceExpression.Create($"/etc/ssl/certs/server.pem"), 534PfxPath = ReferenceExpression.Create($"/etc/ssl/certs/server.pfx")
ReferenceExpressionTests.cs (56)
19var refExpression = ReferenceExpression.Create($"Hello {input}"); 37var expr = ReferenceExpression.Create($"{input}").ValueExpression; 48var expr = ReferenceExpression.Create($"{input}", [new HostUrl("test")], parameters, []).ValueExpression; 62var expr = ReferenceExpression.Create($"{input}", [new HostUrl("test")], [parameterValue], []).ValueExpression; 70var expr = ReferenceExpression.Create($"{s}").ValueExpression; 79var expr = ReferenceExpression.Create($"[{{\"api_uri\":\"{v}\"}}]"); 90var expr = ReferenceExpression.Create($"[{{{{\"api_uri\":\"{v}\"}}}}]"); 101var expr = ReferenceExpression.Create($"Text: {v:uri}"); 136var refExpression = builder.Build(); 149var refExpression = builder.Build(); 162var refExpression = builder.Build(); 174var expr = builder.Build(); 207var whenTrue = ReferenceExpression.Create($"prefix-{param1}-{param2}"); 208var whenFalse = ReferenceExpression.Create($"fallback-{param3}"); 210var conditional = ReferenceExpression.CreateConditional(condition, "True", whenTrue, whenFalse); 224var whenTrue = ReferenceExpression.Create($"literal-a"); 225var whenFalse = ReferenceExpression.Create($"literal-b"); 227var conditional = ReferenceExpression.CreateConditional(condition, "True", whenTrue, whenFalse); 240var whenTrue = ReferenceExpression.Create($"{param1}"); 241var whenFalse = ReferenceExpression.Create($"{param2}"); 243var conditional = ReferenceExpression.CreateConditional(condition, "True", whenTrue, whenFalse); 263var innerConditional = ReferenceExpression.CreateConditional( 265ReferenceExpression.Create($"{param1}"), 266ReferenceExpression.Create($"{param2}")); 269var outerConditional = ReferenceExpression.CreateConditional( 272ReferenceExpression.Create($"{param3}")); 291var innerConditional = ReferenceExpression.CreateConditional( 293ReferenceExpression.Create($"{param1}"), 294ReferenceExpression.Create($"{param2}")); 296var outerConditional = ReferenceExpression.CreateConditional( 299ReferenceExpression.Create($"{param3}")); 320var conditional1 = ReferenceExpression.CreateConditional( 322ReferenceExpression.Create($"{param1}"), 323ReferenceExpression.Create($"{param2}")); 325var conditional2 = ReferenceExpression.CreateConditional( 327ReferenceExpression.Create($"{param1}"), 328ReferenceExpression.Create($"{param2}"));
ResourceDependencyTests.cs (20)
322.WithEnvironment("CONNECTION", ReferenceExpression.Create($"Host={host};Port={port};Password={password}")); 1033var conditional = ReferenceExpression.CreateConditional( 1036ReferenceExpression.Create($"{tlsSuffix}"), 1037ReferenceExpression.Create($",ssl=false")); 1060var conditional = ReferenceExpression.CreateConditional( 1063ReferenceExpression.Create($"{primary.GetEndpoint("http")}"), 1064ReferenceExpression.Create($"{secondary.GetEndpoint("http")}")); 1088var innerConditional = ReferenceExpression.CreateConditional( 1091ReferenceExpression.Create($"{paramA}"), 1092ReferenceExpression.Create($"{paramB}")); 1094var outerConditional = ReferenceExpression.CreateConditional( 1098ReferenceExpression.Create($"{paramC}")); 1121var conditional = ReferenceExpression.CreateConditional( 1124ReferenceExpression.Create($"{param}"), 1125ReferenceExpression.Create($"default"));
ResourceNotificationTests.cs (3)
68nameof(ConnectionStringResource) => new ConnectionStringResource("test", ReferenceExpression.Create($"connectionString")), 1715public ReferenceExpression ConnectionStringExpression => 1716ReferenceExpression.Create($"CustomConnectionString");
src\Shared\ComputeEnvironmentEndpointResolver.cs (4)
26/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint's URL by 46[NotNullWhen(true)] out ReferenceExpression? expression) 57/// Attempts to produce a <see cref="ReferenceExpression"/> for an endpoint property by 77[NotNullWhen(true)] out ReferenceExpression? expression)
WaitForTests.cs (3)
128var cs = builder.AddConnectionString("cs", ReferenceExpression.Create($"{dependency};Timeout=100")); 901public ReferenceExpression ConnectionStringExpression => ReferenceExpression.Create($"foo");
WithEnvironmentTests.cs (6)
86var childExpression = ReferenceExpression.Create($"value"); 87var parameterExpression = ReferenceExpression.Create($"{childExpression}"); 503public ReferenceExpression ConnectionStringExpression => 504ReferenceExpression.Create($"{connectionString}");
WithReferenceTests.cs (14)
430var cs = useFormat 431? ReferenceExpression.Create($"Endpoint={endpoint};Key={key:uri}") 432: ReferenceExpression.Create($"Endpoint={endpoint};Key={key}") 1095public ReferenceExpression ConnectionStringExpression => 1096ReferenceExpression.Create($"{ConnectionString}"); 1098public IEnumerable<KeyValuePair<string, ReferenceExpression>> GetConnectionProperties() 1100yield return new KeyValuePair<string, ReferenceExpression>("Host", ReferenceExpression.Create($"localhost")); 1101yield return new KeyValuePair<string, ReferenceExpression>("Port", ReferenceExpression.Create($"5432")); 1109public ReferenceExpression ConnectionStringExpression => 1110ReferenceExpression.Create($"{ConnectionString}"); 1304public ReferenceExpression ConnectionStringExpression => 1305ReferenceExpression.Create($"{ConnectionString}");
Aspire.Hosting.Valkey (7)
ValkeyResource.cs (7)
50public ReferenceExpression ConnectionStringExpression 63private ReferenceExpression BuildConnectionString() 82public ReferenceExpression UriExpression 102IEnumerable<KeyValuePair<string, ReferenceExpression>> IResourceWithConnectionString.GetConnectionProperties() 104yield return new("Host", ReferenceExpression.Create($"{Host}")); 105yield return new("Port", ReferenceExpression.Create($"{Port}")); 109yield return new("Password", ReferenceExpression.Create($"{PasswordParameter}"));
Aspire.Hosting.Yarp.Tests (2)
YarpClusterTests.cs (2)
223var refExpr = ReferenceExpression.Create($"http://localhost:5000");
ParameterEndToEnd.AppHost (1)
AppHost.cs (1)
32var cs = builder.AddConnectionString("cs", ReferenceExpression.Create($"sql={db.Resource.Parent.PrimaryEndpoint};rows={insertionrows}"));
TestingAppHost1.AppHost (1)
Program.cs (1)
49builder.AddConnectionString("cs2", ReferenceExpression.Create($"Value={builder.AddParameter("p", "this is a value")}"));