Example #1
0
        private void LoadMasterFile()
        {
            var provider = new ExcelProvider();
            var sheet    = this.shellViewModel.Sheets.SelectedItem;

            if (sheet != null)
            {
                var schools = provider.Read(this.shellViewModel.MasterFilePath, sheet.Name);

                var distinct = (from s in schools
                                orderby s.SchoolFullName
                                select s).DistinctBy(s => s.SchoolFullName);

                this.shellViewModel.Schools.Clear();
                this.shellViewModel.FilteredSchools.Clear();

                foreach (var school in distinct)
                {
                    var viewModel = new SchoolViewModel(school);
                    this.shellViewModel.Schools.Add(viewModel);
                    this.shellViewModel.FilteredSchools.Add(viewModel);
                }
            }

            this.shellViewModel.ApplyFilter();
        }
Example #2
0
        private static void Main(string[] args)
        {
            var e = new ExcelProvider();

            e.Read(OdsFile, "KiTa");

            var data = File.ReadAllBytes(CsvFile);


            var lines = File.ReadAllLines(CsvFile);

            using (var reader = new StreamReader(CsvFile, true))
            {
                reader.Read();
                Console.WriteLine(reader.CurrentEncoding);
            }



            var c = new CsvProvider();

            c.Read(CsvFile);
        }
        public IActionResult ImportExcel(IFormFile files)
        {
            if (files == null)
            {
                return(Json(new { success = false, message = "Ko đọc được file" }));
            }

            List <Product> products    = new List <Product>();
            string         fileName    = "";
            string         folderName  = "wwwroot\\Media\\";
            string         webRootPath = _hostEnvironment.ContentRootPath;
            string         newPath     = Path.Combine(webRootPath, folderName);
            string         fullPath    = "";

            if (!Directory.Exists(newPath))
            {
                Directory.CreateDirectory(newPath);
            }
            if (files != null)
            {
                fileName = ContentDispositionHeaderValue.Parse(files.ContentDisposition).FileName.Trim('"');
                fullPath = Path.Combine(newPath, fileName);
                using (var stream = new FileStream(fullPath, FileMode.Create))
                {
                    files.CopyTo(stream);
                }
            }
            try
            {
                var dataset    = ExcelProvider.Read(fullPath);
                var ExcelTable = dataset.Tables[0];
                foreach (DataRow row in ExcelTable.Rows)
                {
                    var a = row.ItemArray[0].ToString();

                    if (a != "Id")
                    {
                        var p = new Product
                        {
                            Id          = row.ItemArray[0].ToString(),
                            Name        = row.ItemArray[1].ToString(),
                            Description = row.ItemArray[2].ToString(),
                            ImageUrl    = row.ItemArray[3].ToString(),
                            Price       = float.Parse(row.ItemArray[4].ToString()),
                            IsConfirm   = bool.Parse(row.ItemArray[5].ToString()),
                            Quantity    = int.Parse(row.ItemArray[6].ToString()),
                            CategoryId  = row.ItemArray[7].ToString(),
                            ShopId      = row.ItemArray[8].ToString()
                        };
                        products.Add(p);
                    }
                }
                _db.Products.AddRange(products);
                _db.SaveChanges();
                return(Json(new { success = true, message = "Thêm danh sách sản phẩm bằng excel thành công" }));
            }
            catch (Exception e)
            {
                return(Json(new { success = false, message = e.InnerException.Message }));
            }
        }