32 writes to Url
Aspire.Hosting (12)
ApplicationModel\ResourceUrlAnnotation.cs (1)
45
Url
= Url,
Orchestrator\ApplicationOrchestrator.cs (6)
237
var url = new ResourceUrlAnnotation {
Url
= allocatedEndpoint.UriString, Endpoint = endpointReference };
250
Url
= $"{allocatedEndpoint.UriScheme}://{endpoint.TargetHost}:{allocatedEndpoint.Port}",
259
Url
= $"{allocatedEndpoint.UriScheme}://{Environment.MachineName}:{allocatedEndpoint.Port}",
291
Url
= $"{allocatedEndpoint.UriScheme}://{resource.Name.ToLowerInvariant()}-{subdomainSuffix}.dev.localhost:{allocatedEndpoint.Port}",
370
url.
Url
= uriBuilder.Uri.ToString();
384
url.
Url
= allocatedEndpoint.UriString.TrimEnd('/') + url.Url;
ProjectResourceBuilderExtensions.cs (2)
617
url.
Url
= launchProfile.LaunchUrl;
623
url.
Url
= (new Uri(baseUri, launchUri)).ToString();
ResourceBuilderExtensions.cs (3)
1133
u.
Url
= uri.ToString();
1141
return builder.WithAnnotation(new ResourceUrlAnnotation {
Url
= url, DisplayText = displayText });
1190
c.Urls.Add(new() { Endpoint = endpoint,
Url
= urlValue, DisplayText = displayText });
Aspire.Hosting.DevTunnels (2)
DevTunnelResourceBuilderExtensions.cs (2)
541
tunnelUrl.
Url
= new UriBuilder(tunnelUrl.Url).Uri.ToString().TrimEnd('/');
568
Url
= new UriBuilder(portUri) { Host = $"{hostPrefix}-inspect{hostSuffix}" }.Uri.ToString(),
Aspire.Hosting.Qdrant (1)
QdrantBuilderExtensions.cs (1)
97
.WithUrlForEndpoint(QdrantServerResource.HttpEndpointName, e => new ResourceUrlAnnotation() {
Url
= "/dashboard", DisplayText = "Qdrant Dashboard" });
Aspire.Hosting.Tests (13)
WithUrlsTests.cs (13)
140
.WithUrls(c => c.Urls.Add(new() {
Url
= "https://example.com", DisplayText = "Example" }))
344
u.
Url
= "https://example.com";
374
.WithUrlForEndpoint("http", u => u.
Url
= "https://example.com");
663
c.Urls.Add(new() {
Url
= "http://example.com/", DisplayLocation = UrlDisplayLocation.SummaryAndDetails });
664
c.Urls.Add(new() {
Url
= "http://example.com/internal", DisplayLocation = UrlDisplayLocation.DetailsOnly });
665
c.Urls.Add(new() {
Url
= "http://example.com/out-of-range", DisplayLocation = (UrlDisplayLocation)100 });
730
return new() {
Url
= "https://example.com" };
756
.WithUrls(c => c.Urls.Add(new() {
Url
= "https://callback-before.com/sub-path", DisplayText = "Example" }))
759
.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
823
url.
Url
= "/test-sub-path";
832
url.
Url
= "/test-sub-path";
875
return new() {
Url
= "/sub-path" };
905
c.Urls.Add(new() { Endpoint = c.GetEndpoint("test"),
Url
= "/sub-path" });
Stress.AppHost (1)
Program.cs (1)
98
.WithUrls(c => c.Urls.Add(new() {
Url
= "https://someplace.com", DisplayText = "Some place" }))
TestShop.AppHost (3)
AppHost.cs (3)
57
u.
Url
= "/";
63
Url
= "/swagger",
89
.WithUrlForEndpoint("https", ep => new() {
Url
= "/health", DisplayText = "Health", DisplayLocation = UrlDisplayLocation.DetailsOnly })
54 references to Url
Aspire.Hosting (13)
ApplicationModel\ResourceUrlAnnotation.cs (1)
45
Url =
Url
,
Dcp\ResourceSnapshotBuilder.cs (2)
258
urls.Add(new(Name: endpointUrl.Endpoint!.EndpointName, Url: endpointUrl.
Url
, IsInternal: endpointUrl.IsInternal) { IsInactive = isInactive, DisplayProperties = new(endpointUrl.DisplayText ?? "", endpointUrl.DisplayOrder ?? 0) });
266
urls.Add(new(Name: null, Url: url.
Url
, IsInternal: url.IsInternal) { IsInactive = !resourceRunning, DisplayProperties = new(url.DisplayText ?? "", url.DisplayOrder ?? 0) });
Orchestrator\ApplicationOrchestrator.cs (8)
151
urls = resourceUrls.Select(url => new UrlSnapshot(Name: url.Endpoint?.EndpointName, Url: url.
Url
, IsInternal: url.DisplayLocation == UrlDisplayLocation.DetailsOnly)
356
Uri.TryCreate(primaryUrl.
Url
, UriKind.RelativeOrAbsolute, out var primaryUri);
357
var primaryPath = primaryUri?.IsAbsoluteUri == true ? primaryUri.AbsolutePath : primaryUrl.
Url
;
364
if (url.Endpoint?.EndpointAnnotation == primaryLaunchProfileEndpoint && !string.Equals(url.
Url
, primaryUrl.
Url
, StringComparisons.Url))
366
var uriBuilder = new UriBuilder(url.
Url
)
382
if (url.
Url
.StartsWith('/') && endpoint.AllocatedEndpoint is { } allocatedEndpoint)
384
url.Url = allocatedEndpoint.UriString.TrimEnd('/') + url.
Url
;
ProjectResourceBuilderExtensions.cs (1)
622
var baseUri = new Uri(url.
Url
);
ResourceBuilderExtensions.cs (1)
1130
if (Uri.TryCreate(u.
Url
, UriKind.Absolute, out var absoluteUri)
Aspire.Hosting.DevTunnels (3)
DevTunnelResourceBuilderExtensions.cs (3)
539
&& !string.Equals(new UriBuilder(u.
Url
).Host, "localhost")) is { } tunnelUrl)
541
tunnelUrl.Url = new UriBuilder(tunnelUrl.
Url
).Uri.ToString().TrimEnd('/');
547
&& string.Equals(new UriBuilder(u.
Url
).Host, "localhost", StringComparison.OrdinalIgnoreCase)) is { } localhostTunnelUrl)
Aspire.Hosting.Qdrant.Tests (1)
QdrantFunctionalTests.cs (1)
248
Assert.Single(urls, u => u.DisplayText == "Qdrant Dashboard" && u.
Url
.EndsWith("/dashboard"));
Aspire.Hosting.Tests (37)
WithEndpointTests.cs (4)
622
url => Assert.StartsWith("https://example.localhost:", url.
Url
),
623
url => Assert.StartsWith("https://localhost:", url.
Url
));
656
url => Assert.StartsWith("https://localhost:", url.
Url
),
657
url => Assert.StartsWith($"https://{Environment.MachineName}:", url.
Url
));
WithUrlsTests.cs (33)
152
Assert.Single(urls, u => u.
Url
== "https://example.com" && u.DisplayText == "Example");
176
Assert.Single(urls, u => u.
Url
== "https://example.com" && u.DisplayText == "Example");
204
u => Assert.True(u.
Url
== endpointUrl.
Url
&& u.DisplayText is null),
205
u => Assert.True(u.
Url
.EndsWith("/test") && u.DisplayText == "Example")
230
Assert.Single(urls, u => u.
Url
.StartsWith("http://localhost") && u.Endpoint?.EndpointName == "test");
266
Assert.StartsWith($"http://{projectB.Resource.Name.ToLowerInvariant()}{expectedHostSuffix}", u.
Url
);
267
Assert.EndsWith("/sub-path", u.
Url
);
274
Assert.StartsWith("http://localhost", u.
Url
);
280
Assert.StartsWith("tcp://localhost", u.
Url
);
306
Assert.Single(urls, u => u.
Url
.EndsWith("/sub-path") && u.Endpoint?.EndpointName == "http");
329
Assert.Single(urls, u => u.
Url
== "http://custom.localhost:23456/home" && u.Endpoint?.EndpointName == "http");
360
u.
Url
== "https://example.com"
772
var staticBeforeUrl = allUrls.FirstOrDefault(u => u.Endpoint is null && u.
Url
.StartsWith("https://static-before.com"));
773
var callbackBeforeUrl = allUrls.FirstOrDefault(u => u.Endpoint is null && u.
Url
.StartsWith("https://callback-before.com"));
774
var staticAfter = allUrls.FirstOrDefault(u => u.Endpoint is null && u.
Url
.StartsWith("https://static-after.com"));
775
var callbackAfter = allUrls.FirstOrDefault(u => u.Endpoint is null && u.
Url
.StartsWith("https://callback-after.com"));
779
Assert.True(endpointUrl.
Url
.StartsWith("http://localhost") && endpointUrl.
Url
.EndsWith("/test"));
782
Assert.Equal("https://static-before.com/test", staticBeforeUrl.
Url
);
785
Assert.Equal("https://callback-before.com/test", callbackBeforeUrl.
Url
);
788
Assert.Equal("https://static-after.com/test", staticAfter.
Url
);
791
Assert.Equal("https://callback-after.com/sub-path", callbackAfter.
Url
);
848
Assert.StartsWith(useHttps ? "https://localhost" : "http://localhost", endpointUrl.
Url
);
849
Assert.EndsWith("/test-sub-path", endpointUrl.
Url
);
857
Assert.StartsWith("http://localhost", launchProfileUrl.
Url
);
858
Assert.EndsWith("/test-sub-path", launchProfileUrl.
Url
);
887
var endpointUrl = projectA.Resource.Annotations.OfType<ResourceUrlAnnotation>().FirstOrDefault(u => u.Endpoint?.EndpointName == "test" && u.
Url
.EndsWith("/sub-path"));
890
Assert.True(endpointUrl.
Url
.StartsWith("http://localhost") && endpointUrl.
Url
.EndsWith("/sub-path"));
917
var endpointUrl = projectA.Resource.Annotations.OfType<ResourceUrlAnnotation>().FirstOrDefault(u => u.Endpoint?.EndpointName == "test" && u.
Url
.EndsWith("/sub-path"));
920
Assert.True(endpointUrl.
Url
.StartsWith("http://localhost") && endpointUrl.
Url
.EndsWith("/sub-path"));