I am not sure that mirroring will be a viable option if you are needing to mirror 500 databases. MS publish a document on the server resources required (http://support.microsoft.com/kb/2001270). Have a read before getting too serious about mirroring.
Replication really isn't a DR type of product - it doesn't do DR all that well. You would need to deal with failover yourself. As far as I am concerned, it would be fairly easy to handle the first failure with a set of manual steps needed but going back will most likely require either another publication to the original server and/or backup restores to that server with some possible outage needed to achieve it).
Your SAN vendor may be able to help out - some have technology to sync SANs between data centres. This is not my area of expertise or experience so I can't add anything else on this.