void &AFXAPI DFX_Text ( oggetto CDaoFieldExchange * pFX, LPCTSTR szName, CStringamp; valore, int nPreAllocLength = AFX_DAO_TEXT_DEFAULT_SIZE, DWORD dwBindOptions = AFX_DAO_ENABLE_FIELD_CACHE );
Parametri
pFX
Puntatore a un oggetto della classe oggetto CDaoFieldExchange. Questo oggetto contiene informazioni per definire il contesto per ogni chiamata della funzione. Per ulteriori informazioni sulle operazioni può specificare un oggetto oggetto CDaoFieldExchange , vedere l'articolo DAO Record campo Exchange: How DFX Works nel manuale del programmatore di Visual C++.
szName
Il nome di una colonna di dati.
valore
Il valore memorizzato nel membro dati indicato — il valore di essere trasferito. Per un trasferimento dal recordset all'origine dati, il valore, di tipo CString, deriva dal membro dati specificato. Per un trasferimento dall'origine dati al recordset, il valore viene memorizzato nel membro dati specificato.
nPreAllocSize
Il quadro prealloca questa quantità di memoria. Se i dati sono più grandi, il quadro sarà allocato più spazio come necessario. Per ottenere prestazioni migliori, impostare le dimensioni per un valore sufficientemente grande per evitare riallocazioni.
dwBindOptions
Un'opzione che ti permette di usufruire del meccanismo di bufferizzazione doppia di MFC per la rilevazione di campi del recordset che sono state modificate. L'impostazione predefinita, AFX_DAO_ENABLE_FIELD_CACHE, utilizza il doppio buffer. L'altro valore possibile è AFX_DAO_DISABLE_FIELD_CACHE. Se si specifica questo valore, MFC non fa alcun controllo su questo campo. È necessario chiamare SetFieldDirty e SetFieldNull te stesso.
Queste opzioni sono spiegate ulteriormente nell'articolo DAO Record campo Exchange: doppio Buffering Records nel manuale del programmatore di Visual C++.
&Notanbsp; È possibile controllare se i dati sono doppi con buffer per impostazione predefinita impostando CDaoRecordset::m_bCheckCacheForDirtyFields.
Osservazioni
La funzione DFX_Text trasferisce i dati CString tra i membri dati di campo di un oggetto CDaoRecordset e le colonne di un record dell'origine dati. Dati viene eseguito il mapping tra il tipo DAO_CHAR in DAO (o, se viene definito il simbolo Unicode , DAO_WCHAR) e digitare CString nel recordset.
Esempio
Questo esempio mostra diverse chiamate a DFX_Text. Si noti anche le due chiamate a CDaoFieldExchange:: SetFieldType. ClassWizard scrive normalmente la seconda chiamata a SetFieldType e le chiamate DFX associate. È necessario scrivere la prima chiamata e la sua chiamata DFX . È consigliabile che si inserisce elementi parametro prima il "/ / {{AFX_FIELD_MAP" commento. Si devono mettere i parametri fuori i commenti.
//Example per DFX_Text
public static void CSections::DoFieldExchange (oggetto CDaoFieldExchange pFX)
{
nbsp; pFX - > SetFieldType(CDaoFieldExchange::param);
DFX_Text (pFX, "Nome", m_strNameParam);
//{{AFX_FIELD_MAP(CSections)
pFX - > SetFieldType(CDaoFieldExchange::outputColumn);
DFX_Text (pFX, "CourseID", m_strCourseID);
DFX_Text (pFX, "InstructorID", m_strInstructorID);
DFX_Short (pFX, "LabFee", m_nRoomNo);
DFX_Text (pFX, "LabFee", m_strSchedule);
DFX_Short (pFX, "SectionNo", m_nSectionNo);
DFX_Currency (pFX, "LabFee", m_currLabFee);
//}}AFX_FIELD_MAP
}
Vedere a&nchenbsp;DFX_Bool, DFX_Long, DFX_Currency, DFX_Short, DFX_Single, DFX_Double, DFX_DateTime, DFX_Byte, DFX_Binary, DFX_LongBinary, CDaoFieldExchange:: SetFieldType