Le but de l'ASP.NET contrôle FormView est pour afficher un seul enregistrement à la fois. Alors, comment puis-je lier à un seul enregistrement? Il se plaint de ce que
Source de données est un type non valide. Il doit être un IListSource, IEnumerable ou IDataSource.
Je peux envelopper mon objet dans une liste si c'est la seule solution. Dans cette application, la FormView est à l'intérieur d'un contrôle par l'utilisateur et je suis à la récupération de l'objet dans une méthode publique, c'est à dire que je ne suis pas à l'aide d'un contrôle de source de données. Je ne suis pas le faire toutes les 2 voies de liaison de données de plus ici, je suis le seul à l'aide de la FormView dans ce cas, pour conserver un aspect cohérent.
Si je suis allé par le livre et lié à un FormView à une source de données qui a retourné une liste d'enregistrements, serait-il en fait de récupérer tous les enregistrements et juste afficher uniquement les enregistrements sélectionnés?
Voici ce que j'ai fini par mettre en place dans une classe utilitaire:
public static IEnumerable<T> WrapInEnumerable<T>(T item)
{
return new T[] {item};
}