title: SQL Server stored procedure after insert row return string value of column data truncated
body: <p>I have been trying to return string value after insert however my data is always truncated. It returns only the first character of the string.</p>
  
  <p>My stored procedure:</p>
  
  <pre><code>ALTER PROC [dbo].[usp_add_user]
      (@firstName nvarchar(50),
       @lastName nvarchar(50),
       @email nvarchar(100),
       @password nvarchar(100),
       @userID nvarchar(50) OUTPUT)
  AS
  BEGIN
      SET @userID = newid()
  
      INSERT INTO [User] ([UserID], [FirstName], [LastName], [Email], [Password])
      VALUES (@userID, @firstName, @lastName, @email, @password)
  
      SELECT @userID;
  END
  </code></pre>
  
  <p>My C# how I am trying to catch the value</p>
  
  <pre><code>access.Parameter["@userID"].Value.ToString();
  </code></pre>
  
  <p>When I execute the stored procedure in SQL Server Management Studio, it shows everything correctly, my <code>@userID</code> is correct. However when it comes back to my Visual Studio I only get first character</p>
  
  <p>Thank you</p>