Set preferred C# styling rules for solution.
Instead of inferring ctx.status type from ctx to get result, use dynamic casting.

Also, forgot to pass ctx as UserStete in UploadFileAsync.
Added file upload test button and click handler.