zoukankan      html  css  js  c++  java
  • juery upload

    <script type="text/javascript">
        $(document).ready(function() {
            $('#upload').click(function () {
                var data = new FormData();
                var file = $('form input[type=file]')[0].files[0];
                data.append('file',file);
                $.ajax({
                    url: '/api/excels/Upload',
                    processData: false,
                    contentType: false,
                    data: data,
                    type: 'POST'
                }).done(function(result) {
                    alert(result);
                }).fail(function(a, b, c) {
                    console.log(a, b, c);
                });
            });
        });
    </script>   





    public class ExcelsController : ApiController
    {
        [HttpPost]
        public async Task<string> Upload()
        {
           var provider = new MultipartMemoryStreamProvider();
           await Request.Content.ReadAsMultipartAsync(provider);
    
           // extract file name and file contents
           Stream stream = new MemoryStream(await provider.Contents[0].ReadAsByteArrayAsync());
    
           //get fileName
           var filename = provider.Contents[0].Headers.ContentDisposition.FileName.Replace(""", string.Empty);
    
            //Check file type 
            if (filename .EndsWith(".xls"))
            {
                excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
            }
    
            else if (filename .EndsWith(".xlsx"))
            {
                excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
            }
            else
            {
                return "Not Valid";
            }
            var result = excelReader.AsDataSet(new ExcelDataSetConfiguration()
            {
                ConfigureDataTable = (_) => new ExcelDataTableConfiguration()
                {
                    UseHeaderRow = true
                }
            });
    
    
           return result;
        }
    }
  • 相关阅读:
    MARTIN FOWLER谈敏捷开发
    精益创业
    DEVOPS基础
    测试驱动开发
    持续集成(CONTINUOUS INTEGRATION)
    极限编程
    回归测试
    敏捷开发十二原则
    敏捷开发宣言
    敏捷开发简史
  • 原文地址:https://www.cnblogs.com/lovewl2/p/11304128.html
Copyright © 2011-2022 走看看