Sujata,
In my experience, aspx will work fine with the search engines. Google and others used to not be keen on querystrings (but seem to index them now) but if you want to be really safe, you should code a single aspx page that accepts querystring parameters and then use RewritePath (search visual studio/.net help for rewritepath) in your Global.asax.vb Application_BeginRequest procedure. This will allow you to use a paramterized query page internally but it will look like a non-paramterised page to external users.
e.g. mysite.com/product/1234.aspx can be rewritten internally to mysite.com/product.aspx?ID=1234.
In effect, your users and search engines will see the mysite.com/product/1234.aspx url when in fact you are using parameters to serve the request - and noone is any the wiser.
If you have existing .html pages, you can programatically redirect the SEs to the new .aspx page(s) by simply programming a:
Response.Status = "301 Moved Permanently"
Response.AddHeader("Location", "mysite.com" & strNewPageURL)
Response.End()
in the Application_BeginRequest of global.asax.
Took me ages to figure out how to do all this - but the results have been great. And I'd say that having "flat" pages is probably better than parameters - don't forget that SE users can see them too and lots of ?s and &s can be a reason to click another link that looks simple and contains words that are relevant to them. Would you be more likely to click on
http://www.mysite.com/product.aspx?I...at=55&src=qeru
or
http://www.mysite.com/sony-rs11-vcr.aspx ?
Also, if you use the latter approach, you'll pick up valuable SE points for having search terms in the URL.
Good luck.