Since it is ASP.NET application, there are 3 timeouts that may involve:
Datatbase Connection timeout:
allowed time period for establishing connection to the database. It seems
your app can create connection to Database, so it is not the problem.
Command timeout: allowed time for your application to wait for the command
(calling a SQL statement/procedure) to finish on the database server side.
For SqlCommand object, it is default to 30 (sec.). You can inccrease it
longer (never set it to 0, not timeout). However, if you know the command
need more time than 30sec, or even more, you may want to reconsider the
application logic and change to some sort of asyc. approach. It is not good
to have a web request to tie the process that long.
IIS web request timeout: by default, it is 120sec, and could be configured.
You need to make sure with your website/ASP.NET settings. So, if you give
your Command longer timeout (more than 120sec, again, bad design), the web
request may be timed out before your Command has done its job.
All in all, let web request wait long for populate huge amount of data is
not good design. So, you'd better find out true reason of timeout and
rethink something, if needed.