Sicher, dass Sie dies tun können, aber die args
ist ein String-Array und die Eigenschaft Name
ist ein String-Variable, Sie müssen also einen Wert von args auf den Namen zuweisen. Oder verwenden Sie String.Join
, um alle Werte mit einem Begrenzer auf Name
zu erhalten.
Da der Name eine statische Variable ist, wird für den Zugriff auf die Variable keine Instanz benötigt. Sie erhalten den Wert über Program.Name
in der statischen Klasse. Nun sehen Sie den Code:
In Hauptgegenwert von args
public static string Name { get; set; }
static void Main(string[] args)
{
Name = args[0]; // taking the First value from the args array
//or use String.Join to get all elements from args
string delemitter = "";
Name = String.Join(delemitter, args);
}
In Static Klasse assign Wert von Namen zu einer lokalen Variablen auf Namen:
static class Settings
{
static public void DoJob()
{
string localVar = Program.Name;
}
}
'Program.Name', aber etwas sagt mir, dass Sie nicht die richtige Frage stellen. – sstan
@sstan Ja, ich frage genau diesen Punkt. Haben wir eine Instanz von Program erstellt? Oder es wird funktionieren, wie du gesagt hast? –
'Name' ist' statisch', daher ist keine Instanz für den Zugriff erforderlich. Aber eine statische Eigenschaft, wie Sie sie haben, fühlt sich nicht richtig an, Design-weise. Ich denke, wir müssten besser verstehen, was Sie zu tun versuchen. – sstan