發表文章

目前顯示的是 2020的文章

[C#] 獲取系統當前版本號

1.獲取系統版本號   Version version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version; 2.格式化   string ver = string.Format("{0}.{1}.{2}.{3}", version.Major, version.Minor, version.Build, version.Revision.ToString("0000")); 2.不做另外處理,直接使用   string ver = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString() 參考網址:  By Hao★

[Asp.Net] 下載指定目錄下的文件

下載指定目錄下的文件   protected void DownloadFile( string filename, string filepath) { Response.Clear(); Response.AddHeader( "Content-Disposition" , "attachment; filename=" + HttpUtility .UrlEncode(filename, System.Text.Encoding .Default)); Response.ContentType = "application/octet-stream" ; Response.TransmitFile(filepath); Response.End(); } 參考網址:  By Hao★

[C#] 查詢指定目錄下相關文件

查詢包含特定副檔名或是檔案中含有某關鍵字   using System.Text.RegularExpressions; using System.IO; private void FindFile(string dir) { DirectoryInfo Dir = new DirectoryInfo(dir); try { string filepath = ""; foreach (FileInfo file in Dir.GetFiles("*.xls"))//查詢附檔名為xls的文件 { Regex regex = new Regex(@"friend");//查詢檔案名稱中有關鍵字friend的文件 Match match = regex.Match(file.ToString()); if (match.Success) { filepath = Dir + file.ToString()); } } } catch (Exception ex) { Console.WriteLine(ex.Message); } } 參考網址:  By Hao★

[Ext.Net] GridPanel 相關整理

隐藏列   GridPanel_1.ColumnModel.SetHidden(1, true); 參考網址:  By Hao★

[Ext.Net] GridPanel獲取選中的數據

1.判斷GridPanel中是否選中了某列   if(!GridPanel1.hasSelection()) { Ext.Msg.alert("提示", "請選擇資料!"); return; } 2.獲取選中行的數據   var record = GridPanel1.selModel.getSelected(); var ID = record.data.ID; ID為GridPanel1的Store的欄位名稱。 3.獲取GridPanel中所有的數據   var data = GridPanel1.getStore().getRange(); 可以將得到的所有數據轉換成Josn傳给後台: var Datas = []; var data = GridPanel1.getStore().getRange(); Ext.each(data, function(record) { Datas.push(record.data); }); var jsonData = Ext.encode(Datas); return jsonData; 參考網址:  Ext.Net 使用总结之GridPanel中的选中行   By Hao★

[Ext.Net] 查詢條件中, 日期時間的佈局方式

前台   <ext:CompositeField ID="CompositeField2" runat="server" FieldLabel="時間"> <Items> <ext:DateField ID="date_start" Vtype="daterange" runat="server" Flex="1"> <Listeners> <Render Handler="this.endDateField = '#{date_end}'" /> </Listeners> </ext:DateField> <ext:Label ID="Label2" runat="server" Text="~"> </ext:Label> <ext:DateField ID="date_end" Vtype="daterange" runat="server" Flex="1"> <Listeners> <Render Handler="this.startDateField = '#{date_start}'" /> </Listeners> </ext:DateField> </Items> </ext:CompositeField> 參考網址: Ext.Net 使用总结之查询条件中的起始日期   By Hao★

Oracle 恢復表中誤刪的數據

  查詢20分鐘前的資料 SELECT * FROM TableName AS OF TIMESTAMP SYSDATE - 20/1440; 查詢指定時間前的資料 SELECT * FROM TableName AS OF TIMESTAMP TO_TIMESTAMP('2020-01-01 12:10:10','YYYY-MM-DD HH24:MI:SS'); 查到後就可以把該紀錄插入表中 INSERT INTO TableName SELECT * FROM TableName AS OF TIMESTAMP SYSDATE - 20/1440 WHERE ID = '123' COMMIT; ps.1440代表一天有1440分鐘 By Hao★

[Ext.Net] GridCommand 用法

圖片
前台   <script type="text/javascript"> var prepare = function(grid, toolbar, rowIndex, record) { var EditButton = toolbar.items.get(0); var DetailButton = toolbar.items.get(1); var SendButton = toolbar.items.get(2); var CheckButton = toolbar.items.get(3); var RejectButton = toolbar.items.get(4); var InactiveButton = toolbar.items.get(5); var PDFButton = toolbar.items.get(6); if (record.data.STATUS == "S" || record.data.STATUS == null || record.data.STATUS == "") { CheckButton.setDisabled(true); RejectButton.setDisabled(true); } if (record.data.CHECK_FLAG == "C") { EditButton.setDisabled(true); SendButton.setDisabled(true); CheckButton.setDisabled(true); RejectButton.setDisabled(true); } if (record.data.INACTIVE_FLAG == "I") {

[Ext.Net] FileUploadField使用

圖片
前台   <ext:FileUploadField ID="FileUploadField" runat="server" FieldLabel="上傳附件" LabelAlign="Right" ButtonText="瀏覽" Icon="Attach" /> <ext:Button ID="Upload" runat="server" Text="上傳" Icon="EjectGreen"> <DirectEvents> <Click OnEvent="btnUploadFile"> </Click> </DirectEvents> </ext:Button> 後台C#   protected void btnUploadFile(object sender, DirectEventArgs e) { if (this.FileUploadField.HasFile) { string FileName = Path.GetFileName(this.FileUploadField.PostedFile.FileName); string newName = DateTime.Now.ToString(@"yyyyMMddHHmmss") + "_" + FileName; string savePath = Page.Server.MapPath("`/UploadFile/" + newName); if(!Directory.Exists(Path.GetDirectoryName(savePath))) { Directory.CreateDirectory(Path.GetDirectoryName(savePath));

[Ext.Net] GridPanel 多選並回傳後台

圖片
後台C#   protected void btnCancel_Click(object sender, DirectEventArgs e) { X.Msg.Confirm("提示", "删除將無法恢復是否確認刪除?", new MessageBoxButtonsConfig { Yes = new MessageBoxButtonConfig {      Handler = "Ext.net.DirectMethods.Yes()", Text = "確認" }, No = new MessageBoxButtonConfig {      Handler = "Ext.net.DirectMethods.No()", Text = "取消" } }).Show(); } [DirectMethod] public void Yes() {      RowSelectionModel sm = this.gpGridPanelID.SelectionModel.Primary as RowSelectionModel; if(sm.SelectedRows.Count != 0) { string tempRowData = ""; foreach(SelectedRow row in sm.SelectedRows) {      tempRowData = tempRowData + "," + row.RecordID ; } } } 前台   <ext:Store ID="StoreID" runat="server"> <Reader> <ext:JsonReader IDProperty=&qu

[Ext.Net] Ext.util.Format

  Ext.grid.GridPanel提供的工具函數, 它會根據輸入的日期格式返回一個renderer函數, 之后Ext.grid.ColumnModel會利用這個renderer函數格式化表格中的日期or其他 <Renderer Fn="Ext.util.Format.dateRenderer('Y/m/d')" /> <Renderer Fn="Ext.util.Format.dateRenderer('Y/m/d H:i:s')" /> <Renderer Fn="Ext.util.Format.numberRenderer('0.000')" /> 參考網址:  Ext.util.Format腳本娃娃   forums.ext.net By Hao★

[C#] Convert Excel to PDF

  using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using Spire.Xls; namespace ToPDF { class Program { static void Main(string[] args) { string tempPath = HttpRuntime.AppDomainAppPath.ToString() + "\\Report\\"; Workbook workbook = new Workbook(); workbook.LoadFromFile(tempPath + "Sample.xlsx", ExcelVersion.Version2010); for(int i = 0; i < workbook.Worksheets.Count; i++) { workbook.Worksheets[i].PageSetup.Orientation = PageOrientationType.Landscape; workbook.Worksheets[i].PageSetup.IsFitToPage = true; } workbook.SaveToFile(tempPath + "result.pdf", Spire.Xls.FileFormat.PDF); } } } 參考網址 By Hao★

[Asp.Net] 學習筆記CommandArgument

ASP中用Button傳遞兩個職給後台的方法: 1、在CommandArgument中用逗號分隔要傳送到後台的兩個參數: <asp:GridView ID="GridViewUserScraps" ItemStyle-VerticalAlign="Top"  AutoGenerateColumns="False" Width="100%" runat="server"  OnRowCommand="GridViews_RowCommand" > <Columns> <asp:TemplateField SortExpression="SendDate"> <ItemTemplate> <asp:Button ID="btnPost" CssClass="submitButton" Text="Comment"  runat="server" CommandName="Comment"  CommandArgument='<%#Eval("ID")+","+ Eval("UserID")%>' /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> p.s. 也可以用這種 CommandArgument='<%# DataBinder.Eval(Container.DataItem,"ID") + "," +  DataBinder.Eval(Container.DataItem,"UserID")%>'  2、C#後台接收到button傳遞的參數後的處理方法: protected void GridView