Skip to content

Add ASP.NET Core & General Overhaul#3

Open
arman-boyakhchyan wants to merge 12 commits into
26.1.3+from
aspnetcore-updates
Open

Add ASP.NET Core & General Overhaul#3
arman-boyakhchyan wants to merge 12 commits into
26.1.3+from
aspnetcore-updates

Conversation

@arman-boyakhchyan

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a new ASP.NET Core TreeList demo alongside a cross-framework UI/config overhaul (theme switch to Fluent, consistent sizing/scrolling/paging) across Vue/React/Angular/jQuery samples.

Changes:

  • Added a new ASP.NET Core project that serves a DevExtreme TreeList backed by MVC controller actions and in-memory data.
  • Updated Vue/React/Angular/jQuery demos to use the Fluent theme, set fixed TreeList height, enable standard scrolling, and align paging defaults.
  • Refactored some TypeScript types (e.g., moving Employee interfaces into service modules and removing shared type files).

Reviewed changes

Copilot reviewed 37 out of 41 changed files in this pull request and generated 14 comments.

Show a summary per file
File Description
Vue/src/types.ts Removed shared Vue types module (types moved/updated elsewhere).
Vue/src/employeesService.ts Exports Employee interface from the service module.
Vue/src/components/HomeContent.vue Theme update, TreeList config updates (height/paging/scrolling), drag/drop refresh logic, styling tweaks.
Vue/src/assets/main.css Fixes container sizing by switching from vh width to vw.
React/src/App.tsx Theme update, adds scrolling/height updates, drag/drop refresh behavior.
React/src/App.css Simplifies layout styles and changes selected-employee positioning.
React/index.html Adds dx-viewport class for DevExtreme theme/layout behavior.
jQuery/src/index.js Adds TreeList height and standard scrolling settings.
jQuery/src/index.html Switches to Fluent theme stylesheet.
jQuery/src/index.css Simplifies layout styles and changes selected-employee positioning.
jQuery/package.json Adds Vite to devDependencies and updates scripts for local running/linting.
jQuery/package-lock.json Lockfile updates for the new toolchain dependency set.
ASP.NET Core/wwwroot/css/Site.css Adds site styling for demo container and selected-employee label.
ASP.NET Core/Views/Shared/Error.cshtml Adds basic error view content.
ASP.NET Core/Views/Shared/_Layout.cshtml Adds layout with bundled vendor assets and dx-viewport.
ASP.NET Core/Views/Home/Index.cshtml Adds Razor TreeList configuration and client handlers for selection/drag-reorder.
ASP.NET Core/Views/_ViewStart.cshtml Configures default layout.
ASP.NET Core/Views/_ViewImports.cshtml Adds namespaces and tag helpers for views.
ASP.NET Core/Readme.md Adds ASP.NET Core build/run instructions and links.
ASP.NET Core/Program.cs Adds minimal ASP.NET Core startup and routing configuration.
ASP.NET Core/package.json Adds npm deps + gulp tooling for bundling DevExtreme assets.
ASP.NET Core/Models/EmployeeData.cs Adds in-memory employee dataset used by the MVC endpoints.
ASP.NET Core/Models/Employee.cs Adds the Employee model used by TreeList and controller actions.
ASP.NET Core/gulpfile.js Adds gulp pipeline to bundle vendor JS/CSS/fonts/icons into wwwroot.
ASP.NET Core/Controllers/HomeController.cs Adds Index and Error endpoints for the demo.
ASP.NET Core/Controllers/EmployeeDataController.cs Adds CRUD + reorder endpoints and JSON population logic.
ASP.NET Core/ASP.NET Core.sln Adds Visual Studio solution for the ASP.NET Core sample.
ASP.NET Core/ASP.NET Core.csproj Adds .NET 8 web project and build targets to install npm deps and run gulp.
ASP.NET Core/appsettings.json Adds base ASP.NET Core configuration.
ASP.NET Core/appsettings.Development.json Adds development logging configuration.
ASP.NET Core/.editorconfig Adds C# coding conventions and formatting rules for the ASP.NET Core sample.
Angular/src/index.html Adds dx-viewport class for DevExtreme theme/layout behavior.
Angular/src/app/employees.service.ts Moves Employee interface into the service and provides in-memory employee data.
Angular/src/app/app.types.ts Removes shared Angular types module (types moved/updated elsewhere).
Angular/src/app/app.component.ts Updates imports/types and keeps TreeList handlers aligned with new structure.
Angular/src/app/app.component.scss Simplifies layout styles and changes selected-employee positioning.
Angular/src/app/app.component.html Updates TreeList markup (nested option components) and TreeList config (height/paging/scrolling).
Angular/package-lock.json Lockfile updates (notably optional dependency metadata changes).
Angular/angular.json Switches Angular demo to Fluent theme stylesheet.
.gitignore Updates ignore patterns to better handle generated ASP.NET wwwroot assets.
Files not reviewed (2)
  • Angular/package-lock.json: Generated file
  • jQuery/package-lock.json: Generated file
Comments suppressed due to low confidence (3)

Vue/src/components/HomeContent.vue:43

  • visibleRows[e.toIndex] can be undefined (e.g., when dragging beyond the rendered range), which would throw when accessing .node. Add a guard for the target row before reading node.
    Angular/src/app/app.component.ts:43
  • visibleRows[e.toIndex] can be undefined, which would throw when accessing .node. Add a guard for the target row before reading node.
  onDragChange(e: any): void {
    const visibleRows = e.component.getVisibleRows();
    const sourceNode = e.component.getNodeByKey(e.itemData.ID);
    let targetNode = visibleRows[e.toIndex].node;

Angular/src/app/app.component.ts:61

  • onReorder reads visibleRows[e.toIndex].data without checking that the row exists. If toIndex is out of bounds, this will throw. Guard the target row access first.
  onReorder(e: any): void {
    const visibleRows = e.component.getVisibleRows();
    const sourceData = e.itemData;
    const targetData = visibleRows[e.toIndex].data;


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread Vue/src/components/HomeContent.vue
Comment thread React/src/App.tsx
Comment thread React/src/App.tsx
Comment thread React/src/App.css
Comment thread Angular/src/app/app.component.html
Comment thread ASP.NET Core/ASP.NET Core.csproj
Comment thread ASP.NET Core/Controllers/EmployeeDataController.cs
Comment thread ASP.NET Core/Models/EmployeeData.cs
Comment thread Vue/src/components/HomeContent.vue
Comment thread Vue/src/components/HomeContent.vue
Comment thread Angular/src/app/app.component.html Outdated
Comment thread Angular/src/app/app.component.ts
Comment thread Angular/src/app/app.component.ts
Comment thread React/src/App.tsx
Comment thread React/src/App.tsx
Comment thread React/src/App.tsx
Comment thread React/src/App.tsx Outdated
Comment thread Vue/src/components/HomeContent.vue
Comment thread Vue/src/components/HomeContent.vue
Comment thread Vue/src/components/HomeContent.vue Outdated
Comment thread .gitignore
arman-boyakhchyan and others added 2 commits July 9, 2026 14:48
Co-authored-by: Mark Allen Ramirez <allen.ramirez@devsoft.ph>
Comment on lines +13 to +14
@* Uncomment to use the HtmlEditor control *@
@* <script src="https://unpkg.com/devextreme-quill/dist/dx-quill.min.js"></script> *@

@markallenramirez markallenramirez Jul 9, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks like not needed in this example. optional to remove

Comment thread ASP.NET Core/Controllers/EmployeeDataController.cs Outdated
Comment thread ASP.NET Core/Controllers/EmployeeDataController.cs
Comment thread ASP.NET Core/Controllers/EmployeeDataController.cs
Comment thread ASP.NET Core/Controllers/EmployeeDataController.cs Outdated
Comment thread ASP.NET Core/Controllers/EmployeeDataController.cs
Comment thread ASP.NET Core/Models/Employee.cs
Comment thread ASP.NET Core/Models/EmployeeData.cs
Comment thread ASP.NET Core/Views/Home/Index.cshtml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants