Erro de SQLite Parâmetros insuficientes fornecidos para o comando em Mono.Data.Sqlite.SqliteStatement.BindParameter

Eu tenho uma instrução insert simples para uma tabela em um banco de dados SQLite no MonoDroid.

Ao inserir no banco de dados, ele diz

Erro de SQLite Parâmetros insuficientes fornecidos para o comando em Mono.Data.Sqlite.SqliteStatement.BindParameter

Eu acho que há um bug ou a mensagem de erro é enganosa. Porque eu só tenho 5 parâmetros e estou fornecendo 5 parâmetros, então não consigo ver como isso está certo.

Meu código está abaixo e qualquer ajuda seria muito apreciada.

try
{
    using (var connection = new SqliteConnection(ConnectionString))
    {
        connection.Open();
        using (var command = connection.CreateCommand())
        {
            command.CommandTimeout = 0;
            command.CommandText = "INSERT INTO [User] (UserPK ,Name ,Password ,Category ,ContactFK) VALUES ( @UserPK , @Name , @Password , @Category , @ContactFK)";
            command.Parameters.Add(new SqliteParameter("@Name", "Has"));
            command.Parameters.Add(new SqliteParameter("@Password", "Has"));
            command.Parameters.Add(new SqliteParameter("@Cateogry", ""));
            command.Parameters.Add(new SqliteParameter("@ContactFK", DBNull.Value));
            command.Parameters.Add(new SqliteParameter("@UserPK", DbType.Guid) {Value = Guid.NewGuid()});
            var result = command.ExecuteNonQuery();
            return = result > 0 ;
        }
    }
}
catch (Exception exception)
{
    LogError(exception);
}

questionAnswers(2)

yourAnswerToTheQuestion