C#常見應(yīng)用函數(shù)實(shí)例小結(jié)
本文實(shí)例總結(jié)了C#常見應(yīng)用函數(shù)。分享給大家供大家參考,具體如下:
1、頁(yè)面寫CS代碼(代碼內(nèi)嵌)
<%@ Import Namespace="System" %> <%@ Import Namespace="System.Collections.Generic" %> <Script runat="server"> public int userId = 0; protected void Page_Load(object sender, EventArgs e) { userId =Convert.ToInt32(Request.QueryString["UserID"]); Response.Write(userId); } </Script> <% if (userId > 0){ msg = "歡迎登錄!"; } else { msg = "未找到用戶"; } %> <%= this.msg %>
2、獲取時(shí)間間隔
/// <summary> /// 獲取時(shí)間間隔(模擬微博發(fā)布文章的時(shí)間間隔) /// </summary> /// <param name="date"></param> /// <returns></returns> public string GetDateStr(DateTime date) { if (date < DateTime.Now) { TimeSpan ts = DateTime.Now - date; if (ts.TotalHours < 1 && ts.TotalMinutes < 1) { return "1分鐘前"; } else if (ts.TotalHours < 1 && ts.TotalMinutes > 0) { return Convert.ToInt32(ts.TotalMinutes) + "分鐘前"; } else if (ts.TotalHours < 4) { return Convert.ToInt32(ts.TotalHours) + "小時(shí)前"; } else if (DateTime.Now.Date == date.Date) { return date.ToString("HH:mm"); } else { return date.ToString("yyyy-MM-dd"); } } return date.ToString("yyyy-MM-dd"); }
3、遍歷Url中的參數(shù)列表
/// <summary> /// 遍歷Url中的參數(shù)列表 /// </summary> /// <returns>如:(?userId=43&userType=2)</returns> public string GetUrlParam() { string urlParam = ""; if (Request.QueryString.Count > 0) { urlParam = "?"; NameValueCollection keyVals = Request.QueryString; foreach (string key in keyVals.Keys) { urlParam += key + "=" + keyVals[key] + "&"; } urlParam = urlParam.Substring(0, urlParam.LastIndexOf('&')); } return urlParam; }
4、清除文本HTML碼
using System.Text.RegularExpressions; /// <summary> /// 清除文本HTML碼 /// </summary> public string RemoveHtmlTag(string htmlStr) { if (string.IsNullOrEmpty(htmlStr)) return string.Empty; return Regex.Replace(htmlStr, @"<[^>]*>", ""); }
5、反射 通過(guò)類名創(chuàng)建類實(shí)例
using System.Reflection; /// <summary> /// 反射 通過(guò)類名創(chuàng)建類實(shí)例 /// </summary> public void ReflecTest() { Object objClass = Assembly.GetExecutingAssembly().CreateInstance("MyStudy.BLL.BookInfoBLL"); //參數(shù):類的完全限定名,無(wú)需類的后綴名 if (objClass != null) { BookInfoBLL bll = (BookInfoBLL)objClass; } }
6、貨幣類型轉(zhuǎn)換
/// <summary> /// 貨幣 /// </summary> /// <param name="obj"></param> /// <returns></returns> public static string ToMoney(object obj) { return String.Format("{0:C}", obj); }
7、小數(shù)點(diǎn)位數(shù)
//1.小數(shù)點(diǎn)位數(shù) string str1 = String.Format("{0:F1}", 56789); //result: 56789.0 string str2 = String.Format("{0:F2}", 56789); //result: 56789.00 string str3 = String.Format("{0:N1}", 56789); //result: 56,789.0 string str4 = String.Format("{0:N2}", 56789); //result: 56,789.00 string str5 = String.Format("{0:N3}", 56789); //result: 56,789.000 string str6 = (56789 / 100.0).ToString("#.##"); //result: 567.89 string str7 = (56789 / 100).ToString("#.##"); //result: 567 //2.保留N位,四舍五入 . decimal d= decimal.Round(decimal.Parse("0.55555"),2); //3.保留N位四舍五入 Math.Round(0.55555, 2);
8、使用TryGetValue改善獲取字典值得性能
使用TryGetValue在大量取值時(shí)性能比ContainsKey提高一倍。
Dictionary<int, String> dic = new Dictionary<int, String>(); dic.Add(1,"張三"); dic.Add(2,"李四"); string name = ""; //錯(cuò)誤寫法,效率底 if (dic.ContainsKey(1)) { name = dic[1]; Console.WriteLine(name); } //正確寫法,效率提高一倍 if (dic.TryGetValue(1, out name)) { Console.WriteLine(name); }
更多關(guān)于C#相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《C#常見控件用法教程》、《WinForm控件用法總結(jié)》、《C#數(shù)據(jù)結(jié)構(gòu)與算法教程》、《C#面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》及《C#程序設(shè)計(jì)之線程使用技巧總結(jié)》
希望本文所述對(duì)大家C#程序設(shè)計(jì)有所幫助。
相關(guān)文章
C# 如何調(diào)用C++ dll string類型返回
這篇文章主要介紹了C# 如何調(diào)用C++ dll string類型返回問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11C#實(shí)現(xiàn)WinForm禁止最大化、最小化、雙擊標(biāo)題欄、雙擊圖標(biāo)等操作的方法
這篇文章主要介紹了C#實(shí)現(xiàn)WinForm禁止最大化、最小化、雙擊標(biāo)題欄、雙擊圖標(biāo)等操作的方法,涉及C#使用WinForm針對(duì)窗口操作的各種常用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08SQLServer批量插入數(shù)據(jù)的三種方式及性能對(duì)比
本文詳細(xì)講解了SQLServer批量插入數(shù)據(jù)的三種方式及性能對(duì)比,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12C#操作SQLite實(shí)現(xiàn)數(shù)據(jù)的增刪改查
SQLite是一個(gè)輕量級(jí)、跨平臺(tái)的關(guān)系型數(shù)據(jù)庫(kù),在小型項(xiàng)目中,方便,易用,同時(shí)支持多種開發(fā)語(yǔ)言。本文將用C#語(yǔ)言對(duì)SQLite 的一個(gè)封裝,實(shí)現(xiàn)數(shù)據(jù)的增刪改查。需要的可以參考一下2022-01-01解決C#運(yùn)行程序修改數(shù)據(jù)后數(shù)據(jù)表不做更新的問(wèn)題
近日,在使用C#連接數(shù)據(jù)庫(kù)的時(shí)候,對(duì)數(shù)據(jù)庫(kù)中的表做更新后,在當(dāng)前啟動(dòng)項(xiàng)目中去顯示表數(shù)據(jù)時(shí)雖然會(huì)發(fā)生一個(gè)更新,但是在結(jié)束程序運(yùn)行后再去觀察數(shù)據(jù)表中的記錄時(shí)發(fā)現(xiàn)并沒(méi)有發(fā)生一個(gè)變化,所以本文給大家解決一下這個(gè)問(wèn)題,需要的朋友可以參考下2023-08-08C# WinForm程序處理后臺(tái)繁忙導(dǎo)致前臺(tái)控件假死現(xiàn)象解決方法
這篇文章主要介紹了C# WinForm程序處理后臺(tái)繁忙導(dǎo)致前臺(tái)控件假死現(xiàn)象解決方法,本文通過(guò)Application.DoEvents()解決這個(gè)問(wèn)題,并講解了Application.DoEvents()的作用,需要的朋友可以參考下2015-06-06C#簡(jiǎn)單實(shí)現(xiàn)SNMP的方法
這篇文章主要介紹了C#簡(jiǎn)單實(shí)現(xiàn)SNMP的方法,通過(guò)一個(gè)簡(jiǎn)單的自定義類分析了C#實(shí)現(xiàn)SNMP的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07C#實(shí)現(xiàn)百度網(wǎng)站收錄和排名查詢功能思路及實(shí)例
這篇文章主要介紹了C#實(shí)現(xiàn)百度網(wǎng)站收錄和排名查詢功能思路及實(shí)例,本文思路同樣適用必應(yīng)、搜狗、搜搜、360等搜索引擎,需要的朋友可以參考下2015-01-01