2009-06-16 8 views
5

Sto utilizzando i dati dinamici ASP.NET per le attività di amministrazione dei dati per un'app Silverlight che ho creato. Ha risparmiato un sacco di tempo senza dover scrivere tutte le schermate di amministrazione che in genere è necessario creare per gli utenti finali per gestire i dati.ASP.NET Dati dinamici: come specificare l'ordinamento degli articoli nell'elenco a discesa

Una cosa che non riesco a capire come ordinare gli elementi negli elenchi a discesa visualizzati sugli schermi: i menu a discesa dei filtri nelle viste elenco o nelle schermate di immissione dati.

Devo specificare tale da qualche parte nelle classi parziali EDM o nei modelli di campo DD ASP.NET? o da qualche altra parte?

Tutto ciò che è necessario fare è ordinare alfabeticamente in base al valore di visualizzazione: sembrano essere in ordine casuale.

grazie Michael

risposta

9

Utilizzare l'attributo DisplayColumn nello spazio dei nomi System.ComponentModel.DataAnnotations.

http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.displaycolumnattribute.aspx

es:

[DisplayColumn("LastName", "LastName")] 
public partial class Employee 
{ 


} 
+0

Bello! Grazie per il consiglio! Ha funzionato un fascino. – Andrew

+0

Supponiamo di avere due fabbri, come faccio a ordinare per cognome e poi per nome? –

+0

@AshMachine vedere qui: http://stackoverflow.com/questions/1767654/sorting-by-multiple-fields-using-displaycolumnattribute-in-asp-net-dynamic-data –

1

La risposta alla tua domanda può essere trovato qui, circa a metà della pagina:

http://csharpbits.notaclue.net/2008/08/dynamic-data-and-field-templates-second.html

Nel Cascase.ascx.cd FilterControl e Cascade_Edit.ascx.cs FieldTemplate troverai un metodo GetChildListFilteredByParent. Restituisce i valori per DropDownList filtrato, ma come vedrai questo elenco è un elenco non ordinato. Per aggiungere l'ordinamento a questo elenco, è necessario aggiungere una clausola Linq OrderBy.

+0

+1 perché questo funziona, ma la risposta di @Aaron Hoffman è stato molto più semplice. – David

Problemi correlati