Sorgente dati di altro progetto

lunedì 04 febbraio 2008 - 09.06

lordjohn76 Profilo | Newbie

Salve, so creare un report, l'ho fatto altre volte, ho usato come sorgente dati sia dei ds sia delle entità presenti nel progetto.
Poi però mi sono imbattuto in una situzione da cui non riesco ad uscire, la creazione di un report la cui sorgente dati appartiene ad un altro progetto della soluzione su cui sto lavorando.

In pratica:

- ho aggiunto la sorgente dati al progetto composta da una entità di altro progetto
- ho creato il report vuoto
- sono andato a cercare tra le sorgenti dati disponibili quella che avevo aggiunto ma non l'ho trovata

Chi può aiutarmi???

freeteo Profilo | Guru

ciao,
se non ho capito male, tu hai un progetto dove hai una classe che vuoi portare come visualizzazione sul report, ad esempio:

progetto entita:
----------------------
public class miaclasse { string nome; public string Nome { get{ return nome; } set { nome= value; } } }
il problema è dovuto al motore di Crystal che non riconosce classi al di fuori del progetto locale, nel senso che anche se gliele dai in pasto dall' "esperto database" poi cmq non ne rileva le proprieta'.
Concordo che sia una scocciatura.

Cmq puoi ingannarlo facendoti un file xml con quella struttura e dandolo in pasto da "Create new connection->ADO.NET->sfoglia il file xml" (cmq quello che ti crea visual studio quando serializzi una classe) :
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Dopodiche da codice gli passi una lista di quel tipo, con il metodo "SetDAtaSource" del reportDocument...

ReportDocument report = new ReportDocument(); report.Load(@"....rpt"); List<Classe> lista = new List<Classe>(); for (int i = 0; i < 10; i++) { Classe classe = new Classe(); classe.Nome = "riga " + i; lista.Add(classe); } report.SetDataSource(lista);

ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

lordjohn76 Profilo | Newbie

Grazie mille freeteo, ho provato la tua soluzione e sembra funzionare, ottima idea!!!!
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5