मैं नहीं जिस तरह से अभिव्यक्ति < समारोह < टी 1 से कन्वर्ट करने के लिए, प्राप्त कर सकते हैं bool > > अभिव्यक्ति < समारोह < टी 2 के लिए, bool > >। चूंकि मैं बहुत सारे प्रतिबिंब का उपयोग कर रहा हूं, असल में, मुझे वास्तव में जो चाहिए वह एक विधि है जो एक प्रकार पैरामीटर लेती है और रूपांतरण करती है।अभिव्यक्ति <समारोह <T1,bool>> अभिव्यक्ति करने के लिए <समारोह <T2,bool> कन्वर्ट गतिशील
public object Convert(Expression<Func<T1,bool>> expr, Type t);
टी 2 टी 1
सेpublic class T1 {
int FamilyId {get; set;}
}
public class T2 : T1 {
... other properties
}
मैं आधार वर्ग
Expression<Func<T1,bool>> filter = p => p.FamilyId == [some value]
कि मैं < टी 2 एक सूची को लागू करना चाहते पर एक फिल्टर अभिव्यक्ति को परिभाषित कर रहा हूँ ली गई है >
'मुझे वास्तव में जो चाहिए वह एक तरीका है जो एक प्रकार पैरामीटर लेता है और रूपांतरण करता है।' - क्या? के लिए 'बूल' क्या है? क्या आपको एक रूपांतरण विधि चाहिए? या एक सशर्त एक? मुझे समझ में नहीं आता –
'टी 1' और' टी 2' कैसे संबंधित हैं? क्या उनके बीच बदलने का कोई तरीका है? – cdhowie
टी 2 टी 1 से लिया गया है। – Hernan