Excel
Excel
ワークシートのロード
機能
サンプル
説明
Excel for .NET を使用すると、Excel ファイルを簡単にアプリケーションに読み込むことができます。Microsoft® Excel をインストールする必要もありません。 Excel ファイルのデータは、さまざまな方法で使用できます。このデモでは、C1XLBook コンポーネントを使用してデータをロードおよび抽出し、 C1Chart コントロールのデータソースとして使用される配列に格納します。
ソース
LoadingWorksheetsController.cs
using Microsoft.AspNetCore.Mvc; using MvcExplorer.Models; using System; using C1.Excel; namespace MvcExplorer.Controllers { public partial class ExcelController : Controller { C1XLBook _xlBook = new C1XLBook(); public ActionResult LoadingWorksheets() { try { _xlBook.Load(Startup.Environment.WebRootPath + "\\Temp\\Houston.xlsx"); } catch (Exception) { //Response.Write("Unable to load Excel file: Houston.xlsx"); return View(); } DrillDataPoints dps = GetChartData(_xlBook); return View(dps.DrillDataPointSeries); } DrillDataPoints GetChartData(C1XLBook book) { // Get first sheet var sheet = book.Sheets[0]; // Get location, date, and cell count var location = sheet[1, 1].Value as string; var date = (DateTime)sheet[2, 1].Value; var count = sheet.Rows.Count - 5; // label.Text = string.Format("{0}, {1} points", location, count); // Get values into arrays for charting var drillData = new DrillDataPoints(count); for (int r = 0; r < count; r++) { drillData.Temperature[r] = (double)sheet[r + 5, 1].Value; drillData.Pressure[r] = (double)sheet[r + 5, 2].Value; drillData.Conductivity[r] = (double)sheet[r + 5, 3].Value; drillData.Ph[r] = (double)sheet[r + 5, 4].Value; drillData.Depth[r] = r; } drillData.ScaleValues(); // Send data to chart return drillData; } } }
LoadingWorksheets.cshtml
@using C1.Web.Mvc.Chart @model IEnumerable<DrillDataPoint> <c1-flex-chart id="ControlId"> <c1-flex-chart-series name="Temperature" chart-type="Line" binding="Temperature"> </c1-flex-chart-series> <c1-flex-chart-series name="Pressure" chart-type="Area" binding="Pressure"> </c1-flex-chart-series> <c1-flex-chart-series name="PressConductivityure" chart-type="Spline" binding="Conductivity"> </c1-flex-chart-series> <c1-flex-chart-series name="Ph" chart-type="Line" binding="Ph"> </c1-flex-chart-series> <c1-flex-chart-axis c1-property="AxisX" major-unit="200"> </c1-flex-chart-axis> <c1-items-source source-collection="Model"></c1-items-source> </c1-flex-chart> @section Description{ <p>@Html.Raw(ExcelRes.LoadingWorkSheets_Text0)</p> }
マニュアル