Pourquoi cette requête dapper renvoie-t-elle null?

asp.net-mvc-3 c# dapper mysql

Question

J'ai une déclaration mysql que je transmets à la méthode de requête dapper et il retourne un objet nul. J'ai créé une classe POCO pour contenir le résultat renvoyé. J'ai testé la requête directement via un éditeur SQL et le résultat a été renvoyé. Voici le code:

public ViewEmail GetViewEmail(string xId, int headerId)
{
    using (IDbConnection connection = new MySqlConnection(_connectionString))
    {
        string sql = "SELECT * FROM ViewEmail " +
                     "WHERE Header_id = @Header_id " +
                     "AND x_id= '@x_id'";

        var viewEmail = connection
            .Query<ViewEmail>(sql, new { Header_id = HeaderId, x_id = xId })
            .SingleOrDefault();

        return viewEmail;
    }
}

Réponse acceptée

Lors de l'utilisation d' instructions préparées , il n'est pas nécessaire de placer le paramètre avec ' . Essayez plutôt ceci:

string sql = "SELECT * FROM ViewEmail " +
             "WHERE Header_id = @Header_id " +
             "AND x_id= @x_id";

Voir la documentation




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi