Skip to content

Commit 6b32f60

Browse files
CopilotJamesNK
andcommitted
Revert to Count + First pattern to avoid SingleOrDefault exception
Co-authored-by: JamesNK <[email protected]>
1 parent 42f71c7 commit 6b32f60

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

src/Aspire.Dashboard/Model/Assistant/AIHelpers.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -327,14 +327,14 @@ public static string SerializeLogEntry(LogEntry logEntry)
327327

328328
public static bool TryGetResource(IReadOnlyList<OtlpResource> resources, string resourceName, [NotNullWhen(true)] out OtlpResource? resource)
329329
{
330-
if (resources.SingleOrDefault(r => r.ResourceName == resourceName) is { } matchedResource)
330+
if (resources.Count(r => r.ResourceName == resourceName) == 1)
331331
{
332-
resource = matchedResource;
332+
resource = resources.First(r => r.ResourceName == resourceName);
333333
return true;
334334
}
335-
else if (resources.SingleOrDefault(r => r.ResourceKey.ToString() == resourceName) is { } matchedByKey)
335+
else if (resources.Count(r => r.ResourceKey.ToString() == resourceName) == 1)
336336
{
337-
resource = matchedByKey;
337+
resource = resources.First(r => r.ResourceKey.ToString() == resourceName);
338338
return true;
339339
}
340340

@@ -344,14 +344,14 @@ public static bool TryGetResource(IReadOnlyList<OtlpResource> resources, string
344344

345345
public static bool TryGetResource(IReadOnlyList<ResourceViewModel> resources, string resourceName, [NotNullWhen(true)] out ResourceViewModel? resource)
346346
{
347-
if (resources.SingleOrDefault(r => r.Name == resourceName) is { } matchedResource)
347+
if (resources.Count(r => r.Name == resourceName) == 1)
348348
{
349-
resource = matchedResource;
349+
resource = resources.First(r => r.Name == resourceName);
350350
return true;
351351
}
352-
else if (resources.SingleOrDefault(r => r.DisplayName == resourceName) is { } matchedByDisplayName)
352+
else if (resources.Count(r => r.DisplayName == resourceName) == 1)
353353
{
354-
resource = matchedByDisplayName;
354+
resource = resources.First(r => r.DisplayName == resourceName);
355355
return true;
356356
}
357357

0 commit comments

Comments
 (0)