hola
>>en donde resultado del procedimiento no pertenece a ningún modelo de la aplicación
Puedes crear una clase nueva en el modelo que mapee con los datos de ese procedure, no tiene que coincidir todo con las clases que defines como tablas
>>Donde la cantidad de columnas será variable, por lo que no puedo asociarlo a un modelo definido, como lo exige ".FromSql".
mmm, pero alli creas columnas dinamicas que pueden variar, eso no esta bueno, porque vas a necesitar usar datatable o algun objeto dynamic
ya que quieres hacer algo que no se corresponde con EF vas a tener que salirte por fuera y usar ADO.NET
El dbcontext de EF te proporciona el objeto de conexion que puedas usar con el SqlCommand o SqlDataAdapter
Igual aclaro que aqui el problema no es EF, porque puede ejecutar procedures donde definas una class especifica para obtener los datos
El problema lo tienes porque armas columnas dinamicas, podrias haber realizado una consulta simple que retorne los años como filas y despues lo pivoteas usando linq
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina