That is not going to work. Not even slightly.
Math.Pi[
^] returns a
double
- which is an approximation to
π
that is accurate within the bounds of a
double
: it's a 64bit value, and the best it can do is 15 digits.
So taking that value and using it as the base for a million-digit π generator is never, ever going to work...
Instead, if you want to calculate to a high digit count, you are going to have to implement one of teh algorithms for that purpose:
http://en.wikipedia.org/wiki/Pi[
^] mentions a few and provides references.