Non puoi creare l'oggetto già dentro la query linq e fartelo restituire in modo corretto? Non avresti cosi problemi nel passarlo ai metodi essendo un normale oggetto.