So greifen Sie in C# die Eigenschaft vom Typ der Klassenart in der generischen Methode zu

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: So greifen Sie in C# die Eigenschaft vom Typ der Klassenart in der generischen Methode zu

by Anonymous » 21 Aug 2025, 05:11

Ich versuche, eine generische Methode einzurichten und auf eine Klassenmobilie innerhalb der Klasse zuzugreifen, die an die Methode übergeben wird. Meine Codebasis hat mehrere Klassen, in denen eine gemeinsame Klasse darin erklärt wird. Mein unten stehender Code sollte das Problem erklären. < /P>
Primärklasse < /p>

Code: Select all

public class PrimaryClass
{
public string PcItemOne { get; set; } = "PC1";
public string PcItemTwo { get; set; } = "PC2";
public string PcItemThree { get; set; } = "PC3";
public SecondaryClass SecondaryClass { get; set; } = new SecondaryClass();
}
< /code>
Sekundärklasse < /p>
public class SecondaryClass
{
public string ScItemOne { get; set; } = "SC1";
public string ScItemTwo { get; set; } = "SC2";
public string ScItemThree { get; set; } = "SC3";
}
< /code>
Generische Methode. [url=viewtopic.php?t=14917]Ich möchte[/url] die Primärklasse in diese Methode übergeben und die Werte innerhalb der Sekundärklasse einstellen. < /P>
public void CallClassProperty(T cls) where T : class
{
Console.WriteLine(typeof(T).Name);

// Something like this but I need to get the reference to Secondary class.
cls.SecondaryClass.ScItemTwo = "my new value";
}
Ich habe versucht, Typeof (t) und andere Zubehör wie GetMember () zu verwenden.

Top