發表文章

目前顯示的是有「ammo」標籤的文章

//新的Excel寫法#2

 //新的Excel寫法#2 public Task<string> CommonWriteExcel<TData>(List<TData> dataList,Dictionary<string,string>reportHeader) {     var dataObject = JsonConvert.SerializeObject(dataList);     DataTable table = JsonConvert.DeserializeObject<DataTable>(dataObject);     using( var ms = new MemoryStream())     {         IWorkbook workbook = new XSSFWorkbook();         ISheet excelSheet = workbook.CreateSheet("Sheet1");         List<String> columns = new List<string>();         IRow row = excelSheet.CreateRow(0);         int columnIndex = 0;         foreach (System.Data.DataColumn column in table.Columns)         {             if (reportHeader.Keys.Contains(column.ColumnName))             {  ...

//新的Excel寫法#1

 //新的Excel寫法#1 public void ExcelCreate<T>(List<T> lsT , string savePath, XSSFWorkbook workbook = null, string SheetName = "預設頁面", string DataName = null             , bool overwrite = false)         {             //檢查workbook null則建立             if (workbook == null){                 workbook = new XSSFWorkbook();                 workbook.CreateSheet(SheetName);             }             //複寫 => 刪除後新增             if (overwrite == true)                 workbook.RemoveName(SheetName);             //若 Sheet為null 建立CreateSheet             if (workbook.GetSheet(SheetName) == null)     ...

泛型運用 走訪參數 string 轉換

 protected T GetParam<T>(T t , bool nullToEmpty = false) {             var sParam = t.GetType().GetProperties()                 .Where(p => p.PropertyType == typeof(string) && p.CanWrite);             foreach (var param in sParam) {                 string currentValue = (string)param.GetValue(t, null);                 if (currentValue != null)                     param.SetValue(t, currentValue.Trim(), null);                 else if (currentValue == null && nullToEmpty == true)                 {                     param.SetValue(t, "", null);                 } ...

用於Linq Where的建置

 #region setting db.where             var pred = PredicateBuilder.New<class>(true);             if (!string.IsNullOrEmpty(model.COMPID))                 pred.And(p => p.col == model.col); #endregion db.where(pred);

判斷 CheckBox 是否被click

目前這家公司幾乎都是前端居多,因此在這邊記錄一個,當作彈藥。 if (document.getElementById("CheckBoxID").checked) {     //.....todo }

BootStrap 輪播 Carousel

一個輪播通常有三個部件 1. 輪播的圖片 2. 圖片計數器 3. 控制器 <!-- 這是輪播的主要外層 --> <div id="slidershow" class="carousel"> <!-- 設定圖片輪播的順序 -->     <ol class="carousel-indicators">          <li class="active" data-target="#slidershow" data-slide-to="0">1</li>         <li data-target="#slidershow" data-slide-to="1">2</li>         <li data-target="#slidershow" data-slide-to="2">3</li>         ...     </ol>      <!-- 設定輪播圖片 -->     <div class="carousel-inner">         <div class="item active">             <a href="##"><img src="#" alt=""></a>                <!-- 圖片對應標題和描述內容 -->             <div class="carousel-caption">           ...

ASP.NET WebForm 圖形驗證碼生成技術

需求 產生一個圖形驗證碼,要可以換圖形驗證碼,並且阻止更換圖形驗證碼時刷新頁面。 畫圖需要  using System.Drawing; using System.Drawing.Imaging; using System.Drawing.Drawing2D;  private string CreateRandomNum(int NumCount)     {         //建立陣列 也可以直接用for迴圈塞入         string allChar = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z";         string[] allCharArray = allChar.Split(',');//差分成陣列                    string randomNum = ""; //亂數組成的string         int temp = -1;//記錄上次亂數值的數值,儘量避免產生幾個相同的亂數         Random rand = new Random();         for (int i = 0; i < NumCount; i++)         {             if (temp != -1)             {                  //依照時間戳記給Random種子,         ...

JavaScript 處理檔案上傳

圖片
透過JavaScript處理檔案上傳 首先介紹Html Code <input type="file" id="uploadfile" accept=".png , . jpg" multiple="multiple"> accept 是接受檔案類型 .後接檔案類型 用 , 做分割 multiple 是否接受多個檔案上傳 取得目標檔案相關內容 alter(document.getElementById(uploadfile).files); 這樣會丟出一個file的陣列,取得裡面的值要用document.getElementById(uploadfile).files[0]就可以取得目標值了。 AJAX上傳資料 let form = new FormData(); form.append("product[photos][]" , document.getElementById(uploadfile).files[i]) // fetchAPI fetch('API URL'),{     method : 'POST',     body : form, } // JQuery $.ajax({    processData : false,     data : form        }) 以下是從 這邊  取得的程式碼 紅色為新增部分,修改排版 Html <div class="container p-5">     <h2 class="mb-5 text-center">File Upload with JavaScript</h2> @*用於排版用*@     <div class="row">         <div class="col-4"></div>         <label class="text-center mb-5 image-preview-wrapper col-4 " style="marg...