Files
csharp/examples/webApiDependencyInjection/Controllers/ExampleDependencyInjectionOnMethodController.cs
Boshi Lian ae79be6665 Clean up warnings in examples (#1628)
* Refactor examples to streamline code structure and improve readability

* Update LangVersion to 13.0 for improved compatibility
2025-04-29 16:55:55 -07:00

28 lines
1.0 KiB
C#

using k8s;
using Microsoft.AspNetCore.Mvc;
namespace webApiDependencyInjection.Controllers
{
[ApiController]
[Route("[controller]")]
public class ExampleDependencyInjectionOnMethodController : ControllerBase
{
/// <summary>
/// Example using the kubernetes client injected directly into the method ([FromServices] IKubernetes kubernetesClient).
/// </summary>
/// <param name="kubernetesClient">The Kubernetes client instance injected via dependency injection.</param>
/// <returns>A collection of pod names in the default namespace.</returns>
[HttpGet]
public IEnumerable<string> GetPods([FromServices] IKubernetes kubernetesClient)
{
ArgumentNullException.ThrowIfNull(kubernetesClient);
// Read the list of pods contained in default namespace
var podList = kubernetesClient.CoreV1.ListNamespacedPod("default");
// Return names of pods
return podList.Items.Select(pod => pod.Metadata.Name);
}
}
}