तो मैं निम्नलिखित पर ठोकर खाईअंतर्निहित रूपांतरण
> Data that i want
> Namespace.ExcelDataField
> Data that i want
कहाँ ExcelDataField मैं स्पष्ट रूप से एक वर्ग मैंने लिखा मुझे डेटा को पढ़ने में मदद करने के एक एक्सेल शीट से बाहर। मैंने इसे MoveFirst/Next के साथ वीबीए डीएओ एक्सेस के समान बनाने के लिए इसे लागू करने की कोशिश की और हमेशा डेटा की एक पंक्ति (currentRow) का पर्दाफाश किया।
मैंने अपने एक्सेल शीट से बाहर आने वाले डेटा को समाहित करने के लिए एक्सेलडाटाफिल्ड क्लास का उपयोग किया क्योंकि डेटा एक्सेल शीट से बाहर निकलने वाला है।
public class ExcelDataField<T>
{
private Excel.Range m_XlRange;
private int m_Row;
private int m_Col;
public T Data
{
get
{
return (T)(this.m_XlRange.Cells[this.m_Row, this.m_Col] as Excel.Range)?.Value2;
}
set
{
this.m_XlRange.Cells[this.m_Row, this.m_Col] = value;
}
}
public ExcelDataField(Excel.Range range, int row, int col)
{
this.m_XlRange = range;
this.m_Row = row;
this.m_Col = col;
}
public static implicit operator T(ExcelDataField<T> dataField)
{
return dataField.Data;
}
}
वर्तमान में मैं परीक्षण प्रयोजनों कि सभी डेटा बाद में आसानी से एक स्ट्रिंग के रूप में संभाला जा सकता है के लिए asuming हूँ करने के लिए मैं इस वर्ग ExcelDataField : ExcelDataField<string>
जो वर्ग मैं में एक एक्सेल शीट को पढ़ने के लिए उपयोग कर रहा हूँ और सिर्फ पढ़ने है की एक अधिभार बनाया यह वापस कंसोल के लिए।
सब कुछ ठीक काम करता है जब तक कि मैं इंटरपोलेटेड तारों का उपयोग नहीं कर रहा हूं जो स्पष्ट रूप से मेरे निहित रूपांतरण को नहीं ढूंढते हैं। मैंने ExcelDataField : ExcelDataField<string
>ExcelDataField : ExcelDataField<String>
को बदलने की कोशिश की लेकिन दोनों काम नहीं करते हैं।
मेरी समझ में इंटरपोलेटेड स्ट्रिंग्स स्वरूपणस्ट्रिंग प्रकार का उपयोग करती हैं जिसमें स्ट्रिंग या स्ट्रिंग से केवल स्पष्ट रूप से कोई स्पष्ट रूपांतरण नहीं होता है।
मेरा प्रश्न कोई भी विस्तार से समझा सकता है कि वास्तव में क्या हो रहा है और क्या मेरे लिए इंटरपोलेटेड स्ट्रिंग का उपयोग करने में सक्षम तरीका है?