Amazingly(maybe not), the problem was in the BLL:
public List<user> GetSalt(User user)
at the top of the class I had defined UserDb as:
and it wanted:
UserDAL UserDb = new UserDAL();
If anyone could tell me what the difference is it would be nice to know.