CREATE PROC GetUserName 

  @UserName varchar(10), 
  @value varchar(10) output 
  ) 
as 
select @value=UTC_Userinfo.UserName 
from  UTC_Userinfo 
where  Position = '区域财务'and AreaCode =(select AreaCode 
                                      from UTC_Userinfo 
                                      where UserName=@UserName) DECLARE @GetUser varchar(10) 
exec GetUserName ew,@GetUser output 
print @GetUser 
这样运行可以得到结果 可是我在ASP.NET中调用会出现问题     SqlConnection conn = new SqlConnection(ConnStr); 
        SqlCommand mycommand = new SqlCommand("GetUserName", conn); 
        mycommand.CommandType = CommandType.StoredProcedure; 
        SqlParameter workParam;          //输入参数 
        workParam = new SqlParameter("@UserName", SqlDbType.NVarChar); 
        workParam.Direction = ParameterDirection.Input; 
        workParam.Value = value; 
        mycommand.Parameters.Add(workParam); 
        workParam = new SqlParameter("@value", SqlDbType.NVarChar);//输出参数 
        workParam.Direction = ParameterDirection.Output; 
        mycommand.Parameters.Add(workParam); 
        conn.Open(); 
        mycommand.ExecuteNonQuery();//这里报错String[1]: Size 属性具有无效大小值 0 
        conn.Close(); 
        return mycommand.Parameters["@value"].Value.ToString();