[ Foro de C# ]

consultas en Linq

09-Mar-2023 17:26
Invitado (brenda)
1 Respuestas

Max(str(Right(Codigo,13)))  as Codigo from Empleado
de esta consulta como la puedo realizar en linq
he tratado pero no me da, El campo codigo es varchar
 // var query = Empleado.Max(x => x.Codigo.Length -13);


14-Mar-2023 22:22
Invitado (Alejandro Andrade)

Para realizar la consulta en LINQ, puedes utilizar la función 'Max' junto con una expresión lambda que convierta el campo 'Codigo' a una cadena que contenga los últimos 13 caracteres y luego encuentre el valor máximo. Aquí te muestro un ejemplo:

var maxCodigo = Empleado.Max(e => Convert.ToInt64(e.Codigo.Substring(e.Codigo.Length - 13)));

En este ejemplo, se utiliza la función 'Max' para encontrar el valor máximo del campo Codigo. La expresión lambda' e => Convert.ToInt64(e.Codigo.Substring(e.Codigo.Length - 13))' convierte el campo 'Codigo' a una cadena que contiene los últimos 13 caracteres y luego la convierte en un número entero de 64 bits para poder encontrar el valor máximo correctamente.

Ten en cuenta que en esta consulta se asume que todos los valores en el campo 'Codigo' tienen al menos 13 caracteres. Si hay valores que tienen menos de 13 caracteres, la consulta podría generar una excepción.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)