Per utilizzare i Microsoft Chart Controls in applicazioni ASP.NET MVC è sufficiente referenziare gli assembly della libreria (System.Web.DataVisualization e, se si desidera avere il supporto visuale in Visual Studio, System.Web.DataVisualization.Design) all'interno del progetto, quindi modificare il file di configurazione web.config aggiungendo alla sezione
<add tagPrefix="asp" namespace="System.Web.UI.DataVisualization.Charting" assembly="System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
Come già visto nello script #983, è necessario registrare l'HTTPHandler per la visualizzazione dei grafici:
<add path="ChartImg.axd" verb="GET,HEAD" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
Usando come View Engine ASP.NET (motore predefinito di MVC) possiamo utilizzare il controllo in maniera del tutto simile a quanto faremmo in un'applicazione basata su WebForm, con pieno supporto al drag & drop ed al binding dei dati.
Nel rispetto del paradigma MVC i dati dovrebbero essere recuperati dal controller (tipicamente richiamando il Model ma, per semplicità, questo passaggio è omesso) e restituiti alla view mediante la collezione ViewData:
public ActionResult Index() { Random random = new Random(); List<int> chartData = new List<int>(); for (int i = 0; i < 10; i++) chartData.Add(random.Next(0, 100)); ViewData["ChartData"] = chartData; return View(); }
La serie di valori sarà utilizzata dalla view ASP.NET come sorgente dati del grafico:
protected void Page_Load(object sender, EventArgs e) { List<int> data = (List<int>)ViewData["ChartData"]; MyChart.Series["MySerie"].Points.DataBindY(data); }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Short-circuiting della Pipeline in ASP.NET Core
Usare un KeyedService di default in ASP.NET Core 8
Implementare il throttling in ASP.NET Core
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Load test di ASP.NET Core con k6
Registrare servizi multipli tramite chiavi in ASP.NET Core 8
I più letti di oggi
- Impostare un elemento come ridimensionabile tramite CSS
- Proteggersi dagli attacchi di Open Redirect in ASP.NET Core MVC
- Personalizzare l'errore del rate limiting middleware in ASP.NET Core
- Accedere alla console di una Azure Container App
- Modificare i metadati nell'head dell'HTML di una Blazor Web App
- Gli oggetti CallOut di Expression Blend 4.0
- SQL Server 2005 December CTP
- Sfruttare le nuove tipologie di input di HTML5 con ASP.NET 4.0
- Upload da una pagina web con Dundas Upload