2009-11-03 8 views
1

J'ai un site Web Dynamic Data et lors de l'insertion d'un enregistrement dans une table, la relation de clé étrangère affichée sous forme de liste déroulante utilise le mauvais champ pour sa valeur de texte.Modifier le champ affiché dans une liste déroulante

Comment puis-je modifier la liste déroulante de manière à utiliser une colonne différente comme valeur dans la liste déroulante lorsque vous travaillez avec cette table?

merci

Répondre

1

La solution est d'ajouter une classe partielle avec certains attributs de l'espace de noms System.ComponentModel.DataAnnotations assemblage &. Notez le [DisplayColumn ("Description")] ci-dessous. C'est ce que le champ est utilisé pour rendre le texte dans une liste.

Further reading

[MetadataType(typeof(ProductMetadata))] 
**[DisplayColumn("Description")]** 
[ScaffoldTable(true)] 
public partial class Product 
{ 
} 

public class ProductMetadata 
{ 
    [UIHint("TextReadOnly")] 
    public string CreatedBy; 

    [UIHint("TextReadOnly")] 
    public string CreatedDate; 

    [ScaffoldColumn(false)] 
    public EntityCollection<OrderItem> OrderItem; 
}