Как использовать Aspose.Cells.GridWeb с .NET Core
Использовать Aspose.Cells.GridWeb с .NET Core
Эта тема показывает, как использовать Aspose.Cells.GridWeb, создав пример веб-сайта в Visual Studio 2019. Процесс разделен на шаги.
Шаг 1: Создание нового проекта
- Откройте Visual Studio 2019.
- Из меню Файл выберите Новый, затем Проект. Открывается диалоговое окно создания нового проекта.
- Выберите ASP.NET Core Web Application из установленных шаблонов проектов Visual Studio и нажмите Далее.
- Укажите расположение и имя проекта, а затем нажмите Создать.
- Выберите шаблон Web Application (Model-View-Controller) и убедитесь, что выбран ASP .NET Core 2.1.
- Нажмите Создать.
Шаг 2: Проверка начального вида
Запуск вновь созданного проекта показывает шаблон по умолчанию в браузере, как показано на изображении ниже.
Шаг 3: Добавление Aspose.Cells.GridWeb
- Добавьте следующие пакеты Nuget в проект
1.Добавьте пакет Aspose.Cells.GridWeb
- Добавьте следующее в файл _ViewImports.cshtml в папке Views.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
@using Aspose.Cells.GridWeb @addTagHelper *, Aspose.Cells.GridWeb
После модификаций файл будет выглядеть так
- Вставьте следующий код в метод Index HomeController.
//set a session store path | |
GridWeb.SessionStorePath = @"D:\Test\tmp\"; | |
GridWeb mw = new GridWeb(); | |
mw.ID = "gid"; | |
mw.SetSession(HttpContext.Session); | |
//set acw_client path | |
mw.ResourceFilePath = "/js/acw_client/"; | |
//load workbook | |
mw.ImportExcelFile("D:\\Book1.xlsx"); | |
//set width height | |
mw.Width = Unit.Pixel(800); | |
mw.Height = Unit.Pixel(500); | |
return View(mw); |
- Добавьте следующий код в файл Index.cshtml в каталоге View > Home.
@model GridWeb | |
<script src="~/js/acw_client/acwmain.js" asp-append-version="true"></script> | |
<script src="~/js/acw_client/lang_en.js" asp-append-version="true"></script> | |
<link href="~/js/acw_client/menu.css" rel="stylesheet" type="text/css"> | |
<div class="text-center"> | |
<GridWebDiv mw=Model></GridWebDiv> | |
</div> |
После изменения файл будет выглядеть так
- Добавьте поддержку сессий и GridScheduedService в файле Startup.cs 1.Добавьте следующий отрывок кода в метод ConfigureServices.
services.AddSession(options => | |
{ | |
// Set a short timeout for easy testing. | |
options.IdleTimeout = TimeSpan.FromSeconds(3600); | |
options.Cookie.HttpOnly = true; | |
// Make the session cookie essential | |
options.Cookie.IsEssential = true; | |
}); | |
services.AddSingleton<Microsoft.Extensions.Hosting.IHostedService, GridScheduedService>(); |
1.Добавьте следующий отрывок кода в метод Configure.
app.UseSession(); | |
app.UseMvc(routes => | |
{ | |
routes.MapRoute("acw", "acw/{type}/{id}", | |
defaults: new { controller = "Acw", action = "Operation" }); | |
routes.MapRoute( | |
name: "default", | |
template: "{controller=Home}/{action=Index}/{id?}"); | |
}); |
- Поместите последний acw_client в каталог: wwwroot/js
- Добавьте AcwController в Контроллеры для обработки маршрута acw, который может предоставить все стандартные операции для общего действия редактирования.
public class AcwController : Controller | |
{ | |
public IActionResult Operation(string type, string id) | |
{ | |
return Aspose.Cells.GridWeb.AcwController.DoAcwAction(this, type, id); | |
} | |
} |
Шаг 4: Проверьте приложение
Запуск приложения даст выход, аналогичный показанному на изображении ниже.