No mapping exists from object type System.Collections.Generic.List when executing stored proc with parameters in EF 4.3

In case someone else comes across this...

I created the parameters as a List and then in the SqlQuery call I passed it with a .ToArray(). Worked for me. Here's the modified code below...

var parameters = new List<object>(); 
parameters.Add(new SqlParameter("param1", param1Value)); 
parameters.Add(new SqlParameter("param2", param2Value)); 
IList<XXXViewModel> XXXList = 
_context.Database.SqlQuery<XXXViewModel>("spXXX @param1, @param2", parameters.ToArray()).ToList(); 

You need to pass each parameter to the method (ie You can't pass a list)

IList<XXXViewModel> XXXList =
     _context.Database.SqlQuery<XXXViewModel>("spXXX @param1, @param2", 
     new SqlParameter("param1", param1Value), 
     new SqlParameter("param2", param2Value)).ToList();

The solution for this problem (in my case was)

 var stuff = db.Database.SqlQuery<SomeEntityType>(query, parms);

Where query was a string that had parameters inserted such as @Name etc. The parms variable was a List of SQLParameters. SQL doesn't like generic lists....

SQL must have an array of SQLParameters sent as and object[] and not a list of generic type.

var stuff = db.Database.SqlQuery<SomeEntityType>(query, parms.ToArray());