await creates error with StreamReader

Using the code from this page:

            // filename is already setup with directory
            char[] result;
            StringBuilder builder = new StringBuilder();

            using (StreamReader reader = File.OpenText(filename))
                int readerLength = (int) (int)reader.BaseStream.Length;
                result = new char[readerLength];
                await reader.ReadAsync(result, 0, readerLength);

Unity gives me this error in the middle of the variable name ‘readerLength’ :

error CS1525: Unexpected Symbol ‘.’, expecting ‘)’,‘,’,‘;’,‘[’, or ‘=’

Any ideas why this doesn’t work?

Unity only works with .NET framework Version 3.5 (it uses Mono 2.6), so language features from 4.0 and upward (like ‘await’) are not supported.