Retrieving many huge sized EPS files and converting them to JPEG in ASP.NET application

Posted by Ashish Gupta on Stack Overflow See other posts from Stack Overflow or by Ashish Gupta
Published on 2010-03-23T10:08:07Z Indexed on 2010/03/23 10:13 UTC
Read the original article Hit count: 424

Filed under:
|
|

I have many (>600) EPS files(300 KB - 1 MB) in database. In my ASP.NET application (using ASP.NET 4.0) I need to retrieve them one by one and call a web service which would convert the content to the JPEG file and update the database (JPEGContent column with the JPEG content). However, retrieving the content for 600 of them itself takes too long from the SQL management studio itself (takes 5 minutes for 10 EPS contents).

So I have two issues:-

1) How to get the EPS content ( unfortunately, selecting certain number of content is not an option :-( ):-

Approach 1:-

foreach(var DataRow in DataTable.Rows)
{
// get the Id and byte[] of EPS
// Call the web method to convert EPS content to JPEG which would also update the database.
}

or

foreach(var DataRow in DataTable.Rows)
{
// get only the Id of EPS
// Hit database to get the content of EPS
// Call the web method to convert EPS content to JPEG which would also update the database.
}

or

Any other approach?

2) Converting EPS to JPEG using a web method for >600 contents. Ofcourse, each call would be a long running operation. Would task parellel library (TPL) be a better way to achieve this?

Also, is doing the entire thing in a SQL CLR function a good idea?

© Stack Overflow or respective owner

Related posts about ASP.NET

Related posts about c#