C# 将参数作为输出传递时出现问题

C# issues in passing parameter as an output

仍然出现错误 "The formal parameter "@result" 未声明为 OUTPUT 参数,但实际参数在请求的输出中传递"。 这是我在 c#

中的代码
            SqlCommand cmd = new SqlCommand("AddRoomType", con);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@TypeName", TxtType.Text);
            cmd.Parameters.Add("@result", SqlDbType.Int);
            cmd.Parameters["@result"].Direction = ParameterDirection.Output;              


            con.Open();
            cmd.ExecuteNonQuery();
            con.Close();

我在 SQL 服务器中的存储过程

Create proce AddRoomType
@TypeName nvarchar(50),
@result int

as
if(exists(select * from TblRoomTypes where RoomType = @TypeName))
set @result = 0
else 
begin
set @result = 1
insert into TblRoomTypes (RoomType) values (@TypeName)
end

请帮忙

在存储过程中将参数设置为 OUTPUT

Create proce AddRoomType
@TypeName nvarchar(50),
@result int out

as
if(exists(select * from TblRoomTypes where RoomType = @TypeName))
set @result = 0
else 
begin
set @result = 1
insert into TblRoomTypes (RoomType) values (@TypeName)
end