I've recently added a Search Page to a website. After making several
searches (not very many about 10), I'm getting a Timeout Expired error.

I've been reading some articles about Connection Pooling and have as far as
I can tell followed all the guidelines.

The results are returned via a DataReader, the connection opened and closed
using...

SqlDataReader result =
myCommand.ExecuteReader(CommandBehaviour.CloseConn ection);
return result;

I've also tried to monitor the User Connections on the Database through the
Performance Monitor, but this doesn't seem to register any connections!
Maybe 1 or two tops.

So I'm a little stumped.

I also have a Menu User Control on each page which fetches it's content from
the Database... I don't know what else to say. Can anyone think of any
issues. Some of the controls on the page also make fetches on the Database,
so I'm thinking, perhaps the time between closing one connection and opening
the next is perhaps causing the problem. I which case, should trying to
merge the code to make use of the same connection be the solution.

Any thoughts?