* migrate to record * chore: update project files and clean up unused references * refactor: convert classes to records and simplify constructors for IntOrString, ResourceQuantity, and V1Patch * fix: define IsExternalInit to resolve CS0518 error in IntOrString * refactor: change IntOrString and ResourceQuantity from records to structs, update implicit conversions, and simplify null checks * refactor: add JsonPropertyName attribute to Value property in IntOrString struct * refactor: simplify V1Patch constructor and improve argument validation * refactor: remove unnecessary CultureInfo parameter in ToInt method * Update src/KubernetesClient/Models/ResourceQuantity.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/KubernetesClient/Models/IntOrString.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Revert "Update src/KubernetesClient/Models/ResourceQuantity.cs" This reverts commit 62b20a691554659e28d419067220dc1a0620133b. * refactor: remove commented-out formatting check and simplify build command * refactor: remove IValidate.cs from project references in Aot and Classic --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
34 lines
818 B
C#
34 lines
818 B
C#
using k8s.Models;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace customResource
|
|
{
|
|
public class CResource : CustomResource<CResourceSpec, CResourceStatus>
|
|
{
|
|
public override string ToString()
|
|
{
|
|
var labels = "{";
|
|
foreach (var kvp in Metadata.Labels)
|
|
{
|
|
labels += kvp.Key + " : " + kvp.Value + ", ";
|
|
}
|
|
|
|
labels = labels.TrimEnd(',', ' ') + "}";
|
|
|
|
return $"{Metadata.Name} (Labels: {labels}), Spec: {Spec.CityName}";
|
|
}
|
|
}
|
|
|
|
public record CResourceSpec
|
|
{
|
|
[JsonPropertyName("cityName")]
|
|
public string CityName { get; set; }
|
|
}
|
|
|
|
public record CResourceStatus : V1Status
|
|
{
|
|
[JsonPropertyName("temperature")]
|
|
public string Temperature { get; set; }
|
|
}
|
|
}
|