I know for many people it is not new but I post It anyway. Creating a stored procedure
CREATE PROCEDURE AddUser
(
@UserName nvarchar(100),
@NewUserId int OUTPUT
) AS
INSERT tUsers (UserName) VALUES(@UserName)
SELECT @NewUserId=@@Identity
RETURN
GO
Creating a function:
public int AddUser(string userName)
{
int newId;
SqlConnection conn = new SqlConnection(connectionSting);
SqlCommand cmd = new SqlCommand(“AddUser“,conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@UserName",userName);
cmd.Parameters.Add("@NewUserId",SqlDbType.Int);
cmd.Parameters["@NewUserId"].Direction = ParameterDirection.Output;
conn.Open();
cmd.ExecuteNonQuery();
newId = (int)cmdl.Parameters["@NewUserId"].Value;
conn.Close();
return newId;
}