2011-06-20 2 views
1

je suis de commencer à utiliser MS-rapport et je voudrais savoir s'il est possible de lier un composant ReportViewer directement à une collection IEnumerable, au lieu de créer un DataSourceControl (ObjectDataSource, EntityDataSource, SqlDataSource, etc ...), de la même manière que nous le faisons avec les composants de databound (en utilisant la propriété Datasource au lieu de DataSourceID). Je sais que le ReportViewer n'a pas de propriété "DataSource", mais je me demande s'il existe un moyen similaire. Dans mon cas, j'utilise une application nTier avec un modèle de référentiel et Entity Framework (POCO EF 4.1).Comment lier un ReportViewer à un IEnumerable <T>

Merci!

+0

Avez-vous vérifié l'utilisation d'une source de données d'objet métier avec le contrôle serveur Web ReportViewer en mode de traitement local? [Link] (http://msdn.microsoft.com/en-us/library/ms251692.aspx) –

Répondre

2

Vous devez créer un reportDataSource pour votre rapport (en utilisant le concepteur). Vous demande un nom du reportDateSource et un type (le type des entités de votre collection IEnumerable) (permet suposse vous nommé id « test » et votre client est datatype)

ReportDataSource reportDataSource = New ReportDataSource("test", listofclients); 
localreport.DataSources.Add(reportDataSource); 

C'est tout.

+0

Merci @ Jonathan. Ça aide beaucoup et rend les choses plus faciles! – outlookrperson

Questions connexes