Read the error message, it's very exact.
The parameterized query '(@UserName nvarchar(4000),@Email nvarchar(4000))UPDATE AspNetUse' expects the parameter '@UserName', which was not supplied.
So that means that this line:
cmd.Parameters.AddWithValue("@UserName", getUserdata.UserName);
is passing a null value, since any other value would not give the error.
So use the debugger, and look at exactly what your getUserData instance contains, and use the stack trace to follow up the call chain to find out why.
Sorry, but we can't do that for you!