Comando de inicio de sesión 'Ejecutar como' de SQL y Linq a SQL

Estoy intentando ejecutar una consulta de SQL como otro inicio de sesión con el comando 'Ejecutar como'. Estoy usando Linq para SQL, así que generé una clase de contexto de datos y estoy usando el método ExecuteQuery para ejecutar el comando SQL 'Ejecutar como'. Entonces llamo un comando de Linq a SQL que es exitoso. Sin embargo, cada consulta posterior falla con el siguiente error:

Se ha producido un error grave en el comando actual. Los resultados, en su caso, deben ser descartados.

Aquí está el fragmento de código que he intentado:

SummaryDataContext summary = new SummaryDataContext();
summary.ExecuteQuery<CustomPostResult>(@"Execute as Login='Titan\Administrator'");
var test = summary.Customers.First();
var test2 = summary.Products.ToList();

No importa qué consulta ejecuto en la segunda consulta, recibo el mensaje de error de arriba. Cualquier ayuda sería apreciada.

Respuestas a la pregunta(3)

Su respuesta a la pregunta