49 writes to Url
Aspire.Hosting (15)
ApplicationModel\ResourceUrlAnnotation.cs (1)
46
Url
= Url,
ApplicationModel\ResourceUrlsEditor.cs (1)
88
Url
= url,
Dashboard\DashboardEventHandlers.cs (1)
317
url.
Url
= $"{url.Url}/login?t={browserToken}";
Orchestrator\ApplicationOrchestrator.cs (6)
335
var url = new ResourceUrlAnnotation {
Url
= allocatedEndpoint.UriString, Endpoint = endpointReference };
348
Url
= $"{allocatedEndpoint.UriScheme}://{endpoint.TargetHost}:{allocatedEndpoint.Port}",
357
Url
= $"{allocatedEndpoint.UriScheme}://{Environment.MachineName}:{allocatedEndpoint.Port}",
390
Url
= $"{allocatedEndpoint.UriScheme}://{resource.Name.ToLowerInvariant()}-{subdomainSuffix}.dev.localhost:{allocatedEndpoint.Port}",
505
url.
Url
= uriBuilder.Uri.ToString();
541
url.
Url
= allocatedEndpoint.UriString.TrimEnd('/') + url.Url;
ProjectResourceBuilderExtensions.cs (2)
803
url.
Url
= launchProfile.LaunchUrl;
809
url.
Url
= (new Uri(baseUri, launchUri)).ToString();
ResourceBuilderExtensions.cs (4)
2118
u.
Url
= uri.ToString();
2126
return builder.WithAnnotation(new ResourceUrlAnnotation {
Url
= url, DisplayText = displayText });
2199
c.Urls.Add(new() { Endpoint = endpoint,
Url
= urlValue, DisplayText = displayText });
2358
url = new ResourceUrlAnnotation {
Url
= "/", Endpoint = endpoint };
Aspire.Hosting.Azure.Tests (2)
AzureCosmosDBExtensionsTests.cs (2)
1248
new() {
Url
= "http://localhost:8080", Endpoint = cosmos.GetEndpoint("emulatorhealth") }
1273
new() {
Url
= "http://localhost:1234", Endpoint = cosmos.GetEndpoint("data-explorer") }
Aspire.Hosting.DevTunnels (2)
DevTunnelResourceBuilderExtensions.cs (2)
669
tunnelUrl.
Url
= new UriBuilder(tunnelUrl.Url).Uri.ToString().TrimEnd('/');
692
Url
= inspectUrlString,
Aspire.Hosting.DevTunnels.Tests (1)
DevTunnelResourceBuilderExtensionsTests.cs (1)
740
context.Urls.Add(new() {
Url
= "https://example.com/diagnostics", DisplayText = "Custom diagnostics" });
Aspire.Hosting.Foundry (1)
HostedAgent\HostedAgentBuilderExtension.cs (1)
309
http.
Url
= new UriBuilder(http.Url)
Aspire.Hosting.Foundry.Tests (1)
HostedAgentExtensionTests.cs (1)
143
Url
= "http://localhost:1234",
Aspire.Hosting.Qdrant (1)
QdrantBuilderExtensions.cs (1)
102
.WithUrlForEndpoint(QdrantServerResource.HttpEndpointName, e => new ResourceUrlAnnotation() {
Url
= "/dashboard", DisplayText = "Manage", DisplayOrder = 1 });
Aspire.Hosting.Tests (22)
Dashboard\DashboardResourceTests.cs (2)
846
new() {
Url
= "http://localhost:5003", Endpoint = ((IResourceWithEndpoints)dashboard).GetEndpoint("http") },
847
new() {
Url
= "https://localhost:5005", Endpoint = ((IResourceWithEndpoints)dashboard).GetEndpoint("https") }
WithUrlsTests.cs (20)
28
Url
= "https://example.com",
163
.WithUrls(c => c.Urls.Add(new() {
Url
= "https://example.com", DisplayText = "Example" }))
367
u.
Url
= "https://example.com";
397
.WithUrlForEndpoint("http", u => u.
Url
= "https://example.com");
680
c.Urls.Add(new() {
Url
= "http://example.com/", DisplayLocation = UrlDisplayLocation.SummaryAndDetails });
681
c.Urls.Add(new() {
Url
= "http://example.com/internal", DisplayLocation = UrlDisplayLocation.DetailsOnly });
682
c.Urls.Add(new() {
Url
= "http://example.com/out-of-range", DisplayLocation = (UrlDisplayLocation)100 });
745
return new() {
Url
= "https://example.com" };
771
.WithUrls(c => c.Urls.Add(new() {
Url
= "https://callback-before.com/sub-path", DisplayText = "Example" }))
774
.WithUrls(c => c.Urls.Add(new() {
Url
= "https://callback-after.com/sub-path" })) // This won't get updated because it's added after the relative URL
833
url.
Url
= "/test-sub-path";
866
url.
Url
= "/test-sub-path";
872
Url
= "/test-another-sub-path",
914
return new() {
Url
= "/sub-path" };
944
url.
Url
= "/admin";
979
Url
= "http://localhost:8080"
1007
Url
= "http://localhost:8080"
1032
c.Urls.Add(new() { Endpoint = c.GetEndpoint("test"),
Url
= "/sub-path" });
1069
Url
= "/",
1121
Url
= "/",
Stress.AppHost (1)
AppHost.cs (1)
86
.WithUrls(c => c.Urls.Add(new() {
Url
= "https://someplace.com", DisplayText = "Some place" }))
TestShop.AppHost (3)
AppHost.cs (3)
63
u.
Url
= "/";
69
Url
= "/swagger",
100
.WithUrlForEndpoint("https", ep => new() {
Url
= "/health", DisplayText = "Health", DisplayLocation = UrlDisplayLocation.DetailsOnly })
75 references to Url
Aspire.Hosting (25)
ApplicationModel\ResourceUrlAnnotation.cs (1)
46
Url =
Url
,
Dashboard\DashboardEventHandlers.cs (1)
317
url.Url = $"{url.
Url
}/login?t={browserToken}";
Dcp\ResourceSnapshotBuilder.cs (3)
325
Url: endpointUrl.
Url
,
353
new(Name: endpointName, Url: endpointUrl.
Url
, IsInternal: endpointUrl.IsInternal)
364
new(Name: null, Url: url.
Url
, IsInternal: url.IsInternal)
Orchestrator\ApplicationOrchestrator.cs (18)
223
urls = resourceUrls.Select(url => new UrlSnapshot(Name: url.Endpoint?.EndpointName, Url: url.
Url
, IsInternal: url.DisplayLocation == UrlDisplayLocation.DetailsOnly)
416
_logger.LogTrace("Added URL '{Url}' for endpoint '{EndpointName}' on resource '{ResourceName}'.", url.
Url
, endpoint.Name, resource.Name);
423
_logger.LogTrace("Added additional URL '{Url}' for endpoint '{EndpointName}' on resource '{ResourceName}'.", additionalUrl.
Url
, endpoint.Name, resource.Name);
437
_logger.LogTrace("Added static URL '{Url}' for resource '{ResourceName}'.", staticUrl.
Url
, resource.Name);
484
Uri.TryCreate(primaryUrl.
Url
, UriKind.RelativeOrAbsolute, out var primaryUri);
485
var primaryPath = primaryUri?.IsAbsoluteUri == true ? primaryUri.AbsolutePath : primaryUrl.
Url
;
492
_logger.LogTrace("Applying path '{Path}' from URL '{Url}' for primary launch profile endpoint '{EndpointName}' to other launch profile endpoints for resource '{ResourceName}'.", primaryPath, primaryUrl.
Url
, primaryLaunchProfileEndpoint.Name, resource.Name);
497
&& !string.Equals(url.
Url
, primaryUrl.
Url
, StringComparisons.Url)
498
&& Uri.IsWellFormedUriString(url.
Url
, UriKind.Absolute))
502
_logger.LogTrace("Updating URL '{Url}' with path '{Path}' for launch profile endpoint '{EndpointName}' for resource '{ResourceName}'.", url.
Url
, primaryPath, url.Endpoint.EndpointName, resource.Name);
504
var uriBuilder = new UriBuilder(url.
Url
) { Path = primaryPath };
508
_logger.LogTrace("Updated URL to '{Url}' for launch profile endpoint '{EndpointName}' on resource '{ResourceName}'.", url.
Url
, url.Endpoint.EndpointName, resource.Name);
517
_logger.LogTrace("URL '{Url}' for primary launch profile endpoint '{EndpointName}' for resource '{ResourceName}' does not have a path to apply to other launch profile endpoints.", primaryUrl.
Url
, primaryLaunchProfileEndpoint.Name, resource.Name);
539
if (url.
Url
.StartsWith('/') && endpoint.AllocatedEndpoint is { } allocatedEndpoint)
541
url.Url = allocatedEndpoint.UriString.TrimEnd('/') + url.
Url
;
544
_logger.LogTrace("Converted relative URL to absolute URL '{Url}' for endpoint '{EndpointName}' on resource '{ResourceName}'.", url.
Url
, endpoint.EndpointName, resource.Name);
558
_logger.LogTrace("Added URL annotation '{Url}' to resource '{ResourceName}'.", url.
Url
, resource.Name);
ProjectResourceBuilderExtensions.cs (1)
808
var baseUri = new Uri(url.
Url
);
ResourceBuilderExtensions.cs (1)
2115
if (Uri.TryCreate(u.
Url
, UriKind.Absolute, out var absoluteUri)
Aspire.Hosting.DevTunnels (3)
DevTunnelResourceBuilderExtensions.cs (3)
667
&& !string.Equals(new UriBuilder(u.
Url
).Host, "localhost")) is { } tunnelUrl)
669
tunnelUrl.Url = new UriBuilder(tunnelUrl.
Url
).Uri.ToString().TrimEnd('/');
675
&& string.Equals(new UriBuilder(u.
Url
).Host, "localhost", StringComparison.OrdinalIgnoreCase)) is { } localhostTunnelUrl)
Aspire.Hosting.Foundry (1)
HostedAgent\HostedAgentBuilderExtension.cs (1)
309
http.Url = new UriBuilder(http.
Url
)
Aspire.Hosting.Foundry.Tests (1)
HostedAgentExtensionTests.cs (1)
155
Assert.Equal("http://localhost:1234/invocations", url.
Url
);
Aspire.Hosting.Qdrant.Tests (1)
QdrantFunctionalTests.cs (1)
250
Assert.Single(urls, u => u.DisplayText == "Manage" && u.
Url
.EndsWith("/dashboard"));
Aspire.Hosting.Redis.Tests (2)
AddRedisTests.cs (2)
311
Assert.Equal("/", managementUrl.
Url
);
337
Assert.Equal("/", managementUrl.
Url
);
Aspire.Hosting.Tests (42)
Dashboard\DashboardResourceTests.cs (2)
862
Assert.Equal(expectedHttpUrl, httpUrl.
Url
);
866
Assert.Equal(expectedHttpsUrl, httpsUrl.
Url
);
WithEndpointTests.cs (4)
815
url => Assert.StartsWith("https://example.localhost:", url.
Url
),
816
url => Assert.StartsWith("https://localhost:", url.
Url
));
849
url => Assert.StartsWith("https://localhost:", url.
Url
),
850
url => Assert.StartsWith($"https://{Environment.MachineName}:", url.
Url
));
WithUrlsTests.cs (36)
175
Assert.Single(urls, u => u.
Url
== "https://example.com" && u.DisplayText == "Example");
199
Assert.Single(urls, u => u.
Url
== "https://example.com" && u.DisplayText == "Example");
227
u => Assert.True(u.
Url
== endpointUrl.
Url
&& u.DisplayText is null),
228
u => Assert.True(u.
Url
.EndsWith("/test") && u.DisplayText == "Example")
253
Assert.Single(urls, u => u.
Url
.StartsWith("http://localhost") && u.Endpoint?.EndpointName == "test");
289
Assert.StartsWith($"http://{projectB.Resource.Name.ToLowerInvariant()}{expectedHostSuffix}", u.
Url
);
290
Assert.EndsWith("/sub-path", u.
Url
);
297
Assert.StartsWith("http://localhost", u.
Url
);
303
Assert.StartsWith("tcp://localhost", u.
Url
);
329
Assert.Single(urls, u => u.
Url
.EndsWith("/sub-path") && u.Endpoint?.EndpointName == "http");
352
Assert.Single(urls, u => u.
Url
== "http://custom.localhost:23456/home" && u.Endpoint?.EndpointName == "http");
383
u.
Url
== "https://example.com"
787
var staticBeforeUrl = allUrls.FirstOrDefault(u => u.Endpoint is null && u.
Url
.StartsWith("https://static-before.com"));
788
var callbackBeforeUrl = allUrls.FirstOrDefault(u => u.Endpoint is null && u.
Url
.StartsWith("https://callback-before.com"));
789
var staticAfter = allUrls.FirstOrDefault(u => u.Endpoint is null && u.
Url
.StartsWith("https://static-after.com"));
790
var callbackAfter = allUrls.FirstOrDefault(u => u.Endpoint is null && u.
Url
.StartsWith("https://callback-after.com"));
794
Assert.True(endpointUrl.
Url
.StartsWith("http://localhost") && endpointUrl.
Url
.EndsWith("/test"));
797
Assert.Equal("https://static-before.com/test", staticBeforeUrl.
Url
);
800
Assert.Equal("https://callback-before.com/test", callbackBeforeUrl.
Url
);
803
Assert.Equal("https://static-after.com/test", staticAfter.
Url
);
806
Assert.Equal("https://callback-after.com/sub-path", callbackAfter.
Url
);
849
Assert.StartsWith(useHttps ? "https://localhost" : "http://localhost", endpointUrl.
Url
);
850
Assert.EndsWith("/test-sub-path", endpointUrl.
Url
);
889
Assert.StartsWith("http://localhost", url.
Url
);
890
Assert.EndsWith("/test-sub-path", url.
Url
);
895
Assert.StartsWith("http://localhost", url.
Url
);
896
Assert.EndsWith("/test-another-sub-path", url.
Url
);
926
var endpointUrl = projectA.Resource.Annotations.OfType<ResourceUrlAnnotation>().FirstOrDefault(u => u.Endpoint?.EndpointName == "test" && u.
Url
.EndsWith("/sub-path"));
929
Assert.True(endpointUrl.
Url
.StartsWith("http://localhost") && endpointUrl.
Url
.EndsWith("/sub-path"));
961
Assert.Equal($"{manager.GetEndpoint("http").Url.TrimEnd('/')}/admin", url.
Url
);
1044
var endpointUrl = projectA.Resource.Annotations.OfType<ResourceUrlAnnotation>().FirstOrDefault(u => u.Endpoint?.EndpointName == "test" && u.
Url
.EndsWith("/sub-path"));
1047
Assert.True(endpointUrl.
Url
.StartsWith("http://localhost") && endpointUrl.
Url
.EndsWith("/sub-path"));