问题描述
publicclassModel{publicModelColumn<int>Column{get;set;}}publicclassModelColumn<TKey>{publicTKeyValue{get;set;}}现有一个model类的操作函数Tmodel传入的是Model的实例publicstaticOperator<T>(Tmodel){PropertyInfo[]ps=typeof(T).GetProperties();objectobj=p.GetValue(model,null);到现在可以获取到属性的Object值,但是怎么实现ModelColumn<int>column=objasModelColumn<int>;呢不能手动写,因为还有可能是ModelColumn<float>等其他类型的。
解决方案
解决方案二:
实现什么
解决方案三:
ModelColumn<int>column=objasModelColumn<int>;如果当前的Model.Column类型是ModelColumn<int>则实现ModelColumn<int>column=objasModelColumn<int>;如果Model.Column类型是ModelColumn<DateTime>则实现ModelColumn<DateTime>column=objasModelColumn<DateTime>;
解决方案四:
publicModelColumn<int>Column{get;set;}你这里已经限定死了需要改成publicModelColumn<T>Column{get;set;}
解决方案五:
谢了还是去改改结构吧
时间: 2024-09-21 05:08:57