title: If i add async keyword to a method which which should return a Task it wrap the return value in Task?
body: <p>if write this function without async and await as this example i get error that i should return Task not User object</p>
  <pre><code>public Task&lt;User&gt; Register(User user, string password)
      {
          byte[] passwordhash,passwordsalt;
  
          CreatePassword(password,out passwordhash,out passwordsalt);
  
          return user;
      }
  </code></pre>
  <p>but if write this function with async and await as this example it work correctly, so i want to know if add async keyword to any method it should wrap the returned value to a Task automaticily</p>
  <pre><code>public async Task&lt;User&gt; Register(User user, string password)
      {
          byte[] passwordhash,passwordsalt;
          CreatePassword(password,out passwordhash,out passwordsalt);
  
          await _Context.Users.AddAsync(user);
          await _Context.SaveChangesAsync();
  
          return user;
      }
  </code></pre>