DE CSharp Keyword field - LIHACHTETAN/ClassicUO-Bad-Newbie-CSharp-Scripts-IDE GitHub Wiki
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
C#: field
Handbuch C# · Praktischer Leitfaden
Bezieht sich auf ein automatisch generiertes Eigenschaftsfeld innerhalb seines Accessors. Ermöglicht die Kombination der automatischen Speicherung mit der Überprüfung.
Einfaches Beispiel (Example.cs)
Speichern Sie dieses Beispiel separat als Example.cs. Führen Sie es unabhängig von den anderen Beispielen dieser Seite aus.
Example.cs:
// PROJECT-EXAMPLE
var item = new Item();
item.Count = -2;
System.Console.WriteLine(item.Count);
class Item { public int Count { get; set => field = System.Math.Max(0, value); } }
Ergebnis:
0
Syntax
public int Count { get; set => field = Math.Max(0, value); }
Syntax C# 14. Der @field-Bezeichner kann auf ein eigenes Mitglied mit demselben Namen verweisen.
Beispiel 1: Grundform
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
public static class Program
{
public static async Task Main(string[] args)
{
Meter meter = new() { Count = -3 };
Console.WriteLine(meter.Count);
}
}
public class Meter { public int Count { get; set => field = Math.Max(0, value); } }
Beispiel 2: eine weitere praktische Form
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
public static class Program
{
public static async Task Main(string[] args)
{
Profile profile = new() { Name = " archer " };
Console.WriteLine(profile.Name);
}
}
public class Profile { public string Name { get => field ?? ""; set => field = value.Trim(); } }
Offizielle Quelle: Microsoft Learn.