public class class1
{
public static void FillTD<T>(T obj)
{
class2 c2=new class2();
c2.name=obj.name;//?此时应该怎样写,才拿到T实例的name属性? }}
求帮助,多谢!
{
public static void FillTD<T>(T obj)
{
class2 c2=new class2();
c2.name=obj.name;//?此时应该怎样写,才拿到T实例的name属性? }}
求帮助,多谢!
interface IName
{
string name { get; set; }
}
让后在方法里指定
public static void FillTD<T>(T obj) where T : IName
{
class2 c2=new class2();
c2.name=obj.name;//?此时应该怎样写,才拿到T实例的name属性?
}
传入的 T 类型一定要继承于 IName 接口
楼上说的,定义为接口,是一种方法,但目前我无法这样实现了.
还有其他方法吗?
2,如果你不需要T一定有Name属性,那么就用反射。
public static void FillTD<T>(T obj)
{
class2 c2 = new class2();
dynamic d = obj;
c2.name = d.name;
}