我想问一下这样定义泛型还有意义吗? public class VM_MixedType
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public string Summary { get; set; }
        public string ImageUrl { get; set; }
        public enumContentType ContentType { get; set; }
        public DateTime CreateDate { get; set; }
        public int LeadOrder { get; set; }
        public int Priority { get; set; }
        public MixedObject OriginObject { get; set; }
    }    public class MixedObject<T>:MixedObject
    {
        public T MObject { get; set; }
    }
    public class MixedObject
    {
        public object MObject { get; set; }
    }
实现new VM_MixedType() { Id = refer.Id, OriginObject = new MixedObject<Article>() { MObject = refer } }

解决方案 »

  1.   

    应该是这样public class VM_MixedType
        {
            public int Id { get; set; }
            public string Title { get; set; }
            public string Summary { get; set; }
            public string ImageUrl { get; set; }
            public enumContentType ContentType { get; set; }
            public DateTime CreateDate { get; set; }
            public int LeadOrder { get; set; }
            public int Priority { get; set; }
            public MixedObject OriginObject { get; set; }
        }    public class MixedObject<T>:MixedObject
        {
            public override T MObject { get; set; }
        }
        public class MixedObject
        {
            public virtual object MObject { get; set; }
        }
      

  2.   

    没看出来有什么用,最后都变成 Object 了。T 几乎没用。
      

  3.   

    重写了基类的object也还会转换成object吗?
    如果没有意义,我想实现OriginObject 的类型是动态的应该怎么来做?
    帮忙看看
      

  4.   

    重写的只能是内部代码,参数和返回类型都不能变,1楼的代码编译都过不了
    public class VM_MixedType<T>
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public string Summary { get; set; }
        public DateTime CreateDate { get; set; }
        public int LeadOrder { get; set; }
        public int Priority { get; set; }
        public MixedObject<T> OriginObject { get; set; }
    }public class MixedObject<T>
    {
        public T MObject { get; set; }
    }
      

  5.   

    这样我该怎么用呢? T的类型不确定啊
    List<VM_MixedType<T>>
      

  6.   

    那就不该用泛型,object 吧