To będzie trudne. Po pierwsze, potrzebujesz ViewState, więc będziesz musiał umieścić raport na zwykłej stronie WebForms. Nie jest to jednak takie złe - WebForms i MVC działają dobrze obok siebie.
Część trudna jest powiązana z rzeczywistymi obiektami IEnumerable, a nie z obiektami typu Object-Source.
Pierwszym krokiem jest zbudowanie modelu danych raportu. Możesz to zrobić w kodzie, z zapytaniami, cokolwiek, jak chcesz. Struktura coś takiego (ale oczywiście znacznie większe) jest typowa:
public class ReportSource
{
public Floogle[] Floogles { get; set; }
}
public class Floogle
{
public Doodad[] Doodads { get; set; }
public string Text { get; set; }
}
public class Doodad
{
public int Number { get; set; }
}
Sztuką jest wykorzystanie kontroli BindingSource w raporcie i ustawić właściwość DataSource do typeof(ReportSource)
- tak, źródłem danych jest rodzaju telefonu model raportu.
Podczas projektowania raportu nie otrzymasz dużo bogactwa, ale będziesz w stanie to zrobić.
Jeśli chodzi o rozwiązania w zakresie raportowania stron trzecich, uznaliśmy Telerik za najlepszą opcję.
Gdzie dokładnie mogę użyć tego źródła BindingSource? – AndreMiranda
Po pierwsze, przykro mi, że musisz pracować z tym okropnym narzędziem. BindingSource to "kontrola", którą możesz "przeciągnąć" na powierzchnię projektanta. –
MVC nie jest przeznaczony do sterowania opcjami typu "przeciągnij i upuść".Pewnie, że możesz "zhakować" je do pracy z MVC (ponieważ MVC jest wciąż budowane na tej samej podstawie co formularze internetowe), ale jest sprzeczne z paradygmatem MVC, więc nie jest zalecane. Odpowiedź Shiraza jest dobra, jeśli masz już raporty, których musisz użyć z MVC. –