none
Adicionar Objectos com tipos numéricos a um DataRow RRS feed

  • Pergunta

  • Quando crio uma datarow e lhe adiciono um objecto, invariavelmente o objecto que lhe é passado é transformado para String, o que é indesejável neste meu caso. Aqui vai o exemplo..

    void InsertRowInTable(DataTable *dataTable, ArrayList* columnNameList, ArrayList* rowData)
    {
        DataRow* dataRow;

        dataRow = DataTable->NewRow();
            unsigned int numberOfColumns = columnNameList->Count;
     
      for(unsigned int i = 0; i < numberOfColumns; i++)
         dataRow->set_Item(columnNameList->get_Item(i), rowData->get_Item(i));
       
        dataTable->Rows->Add(dataRow);
    }
     O que se passa é que o ArrayList pC_rowData contém objectos do tipo System::Int32 e quando se faz o set_Item o Objecto transforma-o para o tipo System::String.. O problema disto é que para ordenação das linhas, a comparação dos valores é não numérica pelo que 2 é maior que 100 (da esquerda para a direita..). Haverá algum modo de contornar isto??

    Obrigado,

    quarta-feira, 10 de janeiro de 2007 12:49