Как использовать Aspose.Cells.GridWeb с .NET Core

Использовать Aspose.Cells.GridWeb с .NET Core

Эта тема показывает, как использовать Aspose.Cells.GridWeb, создав пример веб-сайта в Visual Studio 2019. Процесс разделен на шаги.

Шаг 1: Создание нового проекта

  1. Откройте Visual Studio 2019.
  2. Из меню Файл выберите Новый, затем Проект. Открывается диалоговое окно создания нового проекта.
  3. Выберите ASP.NET Core Web Application из установленных шаблонов проектов Visual Studio и нажмите Далее.

todo:image_alt_text

  1. Укажите расположение и имя проекта, а затем нажмите Создать.

todo:image_alt_text

  1. Выберите шаблон Web Application (Model-View-Controller) и убедитесь, что выбран ASP .NET Core 2.1.

todo:image_alt_text

  1. Нажмите Создать.

Шаг 2: Проверка начального вида

Запуск вновь созданного проекта показывает шаблон по умолчанию в браузере, как показано на изображении ниже.

todo:image_alt_text

Шаг 3: Добавление Aspose.Cells.GridWeb

  1. Добавьте следующие пакеты Nuget в проект

1.Добавьте пакет Aspose.Cells.GridWeb

todo:image_alt_text

  1. Добавьте следующее в файл _ViewImports.cshtml в папке Views.
    @using Aspose.Cells.GridWeb
    @addTagHelper *, Aspose.Cells.GridWeb

После модификаций файл будет выглядеть так

todo:image_alt_text

  1. Вставьте следующий код в метод 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);

todo:image_alt_text

  1. Добавьте следующий код в файл 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>

После изменения файл будет выглядеть так

todo:image_alt_text

  1. Добавьте поддержку сессий и 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>();

todo:image_alt_text

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?}");
});

todo:image_alt_text

  1. Поместите последний acw_client в каталог: wwwroot/js
  2. Добавьте AcwController в Контроллеры для обработки маршрута acw, который может предоставить все стандартные операции для общего действия редактирования.
public class AcwController : Controller
{
public IActionResult Operation(string type, string id)
{
return Aspose.Cells.GridWeb.AcwController.DoAcwAction(this, type, id);
}
}

todo:image_alt_text

Шаг 4: Проверьте приложение

Запуск приложения даст выход, аналогичный показанному на изображении ниже.

todo:image_alt_text