/ / Ordenando un GridView basado en pesos en otra tabla de base de datos - c #, gridview, ordenando, ponderando

Ordenando un GridView basado en pesos en otra tabla de base de datos - c #, gridview, ordenando, ponderando

Tengo un GridView que se llena desde una base de datos que no es de SQL que utilizamos internamente. Uno de esos campos es un almacén. (Ejemplo: AAA, AAB, AAC, etc.)

En otra base de datos (SQL) mantengo una lista de todos los almacenes y les doy un peso. El peso es sólo un número entero; cuanto más alto es el número entero, más lejos está el almacén.

Necesito ordenar mi GridView basado en esosPesos de almacén. ¿Cómo puedo hacer que mi orden GridView dependa de los datos de otra tabla? Parece que debería ser una solución fácil, pero me estoy quedando atascado. Si importa, el GridView está vinculado a una clase System.Collections.ObjectModel.Collections <>.

Respuestas

1 para la respuesta № 1

La propiedad SortExpression admite la navegación de propiedades "complejas". ¿Ha intentado usar esto como la expresión de orden para su columna GridView:

<asp:TemplateField SortExpression="Stockroom.Weight">

0 para la respuesta № 2

Supongo que ya tiene el código de acceso a los datos ya resuelto. Entonces, mi sugerencia sería:

  1. Cree una clase que tenga toda la información que necesita de la base de datos que no es de SQL y la columna que necesita de la base de datos de SQL.
  2. Use su código de acceso a datos para recuperar la información y rellenar algo como una lista de enlace con objetos del tipo que creó en 1
  3. Puede enlazar la vista de cuadrícula a ese origen de enlace para que pueda ordenar ese valor