Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Export to excel using aspose
Message
De
09/03/2011 08:35:32
 
 
À
09/03/2011 07:31:16
Information générale
Forum:
ASP.NET
Catégorie:
Autre
Divers
Thread ID:
01502896
Message ID:
01503019
Vues:
27
>>>HI
>>>
>>>I'm using aspose.cells to export some data to excel.
>>>
>>>The site uses excel2003 so I need to cater for more than 65000 rows being in the datatable.
>>>
>>>The datatable is created by a stored procedure.
>>>
>>>Any thoughts on my best option.
>>>
>>>Is there any way I can access parts of the datatable ?
>>>
>>>the Import is statement is
>>>
>>> myWorksheet.Cells.ImportDataTable(dtData, True, "A1")
>>
>>You mean you want to be sure of not attempting to import more the 65K rows ?
>>I've not used aspose but it looks as if there are overloads to ImportDataTable() that lets you specify the number of rows. e.g:
>>http://www.aspose.com/documentation/.net-components/aspose.cells-for-.net/aspose.cells.cells.importdatatable_overload_8.html
>
>Hi Viv
>
>that allows me to restrict the number of rows imported but not set the start point in the datatable.
>
>Do you know off hand is it possible to read in part of a datatable. So I could set the start point in the data import and the number of rows I want

I see there's a Cells.ImportDataRow() method but I'd imagine calling that repeatedly might be slow. You could, I suppose, create a temporary table to pass to the ImportDataTable(). Ugly but would work:
       public DataTable GetPartTable(DataTable dt, int start, int rowCount)
        {
            int stop = start + rowCount;
            DataTable CloneTable = dt.Clone();
            for (int i = start ; i< stop ; i++)
            {
                CloneTable.ImportRow(dt.Rows[i]);
            }
            return CloneTable;
        }
Then:
DataTable tmp = GetPartTable(OriginalTable, 0, 65656);
(Needs some parameter checking.....)
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform