using System;
using System.Data;
using System.IO;
using OfficeOpenXml;
using Amazon;
using Amazon.S3;
using Amazon.S3.Transfer;
class Program
{
static async Task Main()
{
// 1. Sample DataTable
var dataTable = new DataTable("MyData");
dataTable.Columns.Add("ID", typeof(int));
dataTable.Columns.Add("Name", typeof(string));
dataTable.Rows.Add(1, "Alice");
dataTable.Rows.Add(2, "Bob");
// 2. Export to Excel
string excelFilePath = "output.xlsx";
ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
using (var package = new ExcelPackage())
{
var ws = package.Workbook.Worksheets.Add(dataTable.TableName);
ws.Cells["A1"].LoadFromDataTable(dataTable, true);
File.WriteAllBytes(excelFilePath, package.GetAsByteArray());
}
// 3. Upload to AWS S3
var bucketName = "your-s3-bucket-name";
var keyName = "exports/output.xlsx"; // path in S3
var transferUtility = new TransferUtility(new AmazonS3Client(
"your-access-key",
"your-secret-key",
RegionEndpoint.APSouth1)); // choose your region
await transferUtility.UploadAsync(excelFilePath, bucketName, keyName);
Console.WriteLine("✅ Upload completed.");
}
}
Sign up here with your email
ConversionConversion EmoticonEmoticon