Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Excel Export C# - Modern .NET Core Version

A modern, cross-platform Excel export library and web application built with .NET 9 and ASP.NET Core.

🚀 Features

  • Cross-platform compatibility - Works on Windows, macOS, and Linux
  • Modern .NET 9 - Latest LTS version with performance improvements
  • EPPlus integration - Professional Excel file generation
  • ASP.NET Core web application - Modern web UI with Bootstrap
  • Nullable reference types - Enhanced type safety
  • Dependency injection - Modern .NET patterns
  • Security headers - Production-ready security configuration

📁 Project Structure

ExcelExportCSharp/
├── Code/
│   ├── ExcelExportNetCore/          # .NET 9 Class Library
│   │   ├── Entities/                # Data models
│   │   ├── Helper/                  # Utility classes
│   │   └── Manager/                 # Business logic
│   └── ExcelExportWeb/              # ASP.NET Core Web App
│       ├── Controllers/             # MVC Controllers
│       ├── Views/                   # Razor Views
│       └── wwwroot/                 # Static files
├── .github/                         # GitHub configurations
│   └── dependabot.yml              # Automated dependency updates
└── Docs/                           # Documentation

🛠️ Technology Stack

  • .NET 9 - Latest LTS framework
  • ASP.NET Core - Modern web framework
  • EPPlus 7.0.9 - Excel file generation
  • Bootstrap 5 - Responsive UI
  • Razor Pages - Server-side rendering
  • Entity Framework - Data access (ready for implementation)

🚀 Getting Started

Prerequisites

  • .NET 9 SDK
  • Visual Studio 2022, VS Code, or Rider

Installation

  1. Clone the repository

    git clone https://github.com/tarunbatta/ExcelExportCSharp.git
    cd ExcelExportCSharp
  2. Restore dependencies

    dotnet restore
  3. Build the solution

    dotnet build
  4. Run the web application

    dotnet run --project Code/ExcelExportWeb/ExcelExportWeb.csproj
  5. Open your browser Navigate to https://localhost:5001 or http://localhost:5000

📊 Excel Export Features

Supported Data Types

  • Users Data - Name, age, date of birth, salary
  • Games Data - Name, popularity status
  • Custom Data - Any DataTable structure

Export Methods

  • Direct download - Browser-based file download
  • Stream-based - Memory-efficient processing
  • Custom formatting - Headers, styling, column widths

🔧 Configuration

Development

  • Debug mode enabled
  • Detailed error messages
  • Hot reload support

Production

  • Optimized builds
  • Security headers enabled
  • HTTPS enforcement
  • Error logging

🛡️ Security Features

  • Content Security Policy - XSS protection
  • HTTPS enforcement - Secure connections
  • Security headers - Modern browser security
  • Input validation - Request sanitization
  • Error handling - Secure error responses

📦 Dependencies

Core Libraries

  • EPPlus - Excel file generation
  • Microsoft.AspNetCore.Mvc - Web framework
  • System.Data - Data access

Development Tools

  • Microsoft.NET.Sdk.Web - Web application SDK
  • Microsoft.NET.Sdk - Class library SDK

🔄 Migration from Legacy Version

This project has been completely migrated from .NET Framework 4.5 to .NET 9:

What Changed

  • Framework: .NET Framework 4.5 → .NET 9
  • Web Framework: ASP.NET Web Forms → ASP.NET Core
  • Project Format: Legacy .csproj → SDK-style
  • Excel Library: Custom XML → EPPlus
  • UI Framework: Web Forms → Razor Pages
  • Build System: MSBuild → .NET CLI
  • Cross-platform: Windows-only → Windows/macOS/Linux

What's Improved

  • 🚀 Performance - 2-3x faster execution
  • 🔒 Security - Modern security practices
  • 📱 Responsive - Mobile-friendly UI
  • 🛠️ Developer Experience - Hot reload, IntelliSense
  • 🌐 Deployment - Container-ready, cloud-native

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE.txt file for details.

🆘 Support

  • Issues: GitHub Issues
  • Documentation: Check the Docs/ folder
  • Examples: See the web application for usage examples

🔮 Roadmap

  • Database Integration - Entity Framework Core
  • API Endpoints - RESTful API for Excel export
  • Advanced Formatting - Charts, formulas, conditional formatting
  • Batch Processing - Multiple file generation
  • Cloud Storage - Azure Blob, AWS S3 integration
  • Authentication - User management and access control

Built with ❤️ using .NET 9 and ASP.NET Core

About

No description, website, or topics provided.

Resources

Security policy

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages