C#常见应用函数实例小结
发布时间:2020-12-15 06:10:45 所属栏目:百科 来源:网络整理
导读:本文实例总结了C#常见应用函数。供大家参考研究具体如下: 1、页面写CS代码(代码内嵌) %@ Import Namespace="System" %%@ Import Namespace="System.Collections.Generic" %Script runat="server" public int userId = 0; protected void Page_Loa
本文实例总结了C#常见应用函数。分享给大家供大家参考,具体如下: 1、页面写CS代码(代码内嵌) <%@ 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、获取时间间隔 /// <summary> /// 获取时间间隔(模拟微博发布文章的时间间隔) /// </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) + "小时前"; } 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中的参数列表 /// <summary> /// 遍历Url中的参数列表 /// </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、反射 通过类名创建类实例 using System.Reflection; /// <summary> /// 反射 通过类名创建类实例 /// </summary> public void ReflecTest() { Object objClass = Assembly.GetExecutingAssembly().CreateInstance("MyStudy.BLL.BookInfoBLL"); //参数:类的完全限定名,无需类的后缀名 if (objClass != null) { BookInfoBLL bll = (BookInfoBLL)objClass; } } 6、货币类型转换 /// <summary> /// 货币 /// </summary> /// <param name="obj"></param> /// <returns></returns> public static string ToMoney(object obj) { return String.Format("{0:C}",obj); } 7、小数点位数 //1.小数点位数 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}",789.00 string str5 = String.Format("{0:N3}",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在大量取值时性能比ContainsKey提高一倍。 Dictionary<int,String> dic = new Dictionary<int,String>(); dic.Add(1,"张三"); dic.Add(2,"李四"); string name = ""; //错误写法,效率底 if (dic.ContainsKey(1)) { name = dic[1]; Console.WriteLine(name); } //正确写法,效率提高一倍 if (dic.TryGetValue(1,out name)) { Console.WriteLine(name); } 更多关于C#相关内容感兴趣的读者可查看本站专题:《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》 希望本文所述对大家C#程序设计有所帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |