C# 未知类型属性

本文关键字:属性 类型 未知 | 更新日期: 2023-09-27 17:56:45

我有这样的类:

public class Student
{
     private string NumberP;
     public  string Number
     {
       get{return NumberP;}
       set{NumberP=value;}
     }
}
public class School
{
     private string NameP;
     public  string Name
     {
       get{return NameP;}
       set{NameP=value;}
     }
}

我想声明来自另一个类(如(学校或学生)的类型,但我不知道它的类型。

如何声明属性未知类型。我将再次设置未知类型

public class MyClass
{
    public UnKnownType
    {
    }
}

C# 未知类型属性

由于StudentSchool类型之间没有任何关系,因此您可以使用object类型:

public class MyClass
{
    public object SomeProperty { get; set; }
}

并像这样使用:

MyClass myClass = new MyClass();
myClass.SomeProperty = new Student();

或使包含类generic

public class MyClass<T>
{
    public T SomeProperty { get; set; }
}

然后你可以像这样使用:

MyClass<Student> myClass = new MyClass<Student>();
myClass.SomeProperty = new Student();
public class MyClass
{
    private object myField = null;
    public object MyProperty
    {
        get { /* ... */ }
        set { /* ... */ }
    }
}