首页 > 编程 > C# > 正文

C#常见应用函数实例小结

2019-10-29 21:15:05
字体:
来源:转载
供稿:网友

本文实例总结了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.0string str2 = String.Format("{0:F2}", 56789); //result: 56789.00string str3 = String.Format("{0:N1}", 56789); //result: 56,789.0string str4 = String.Format("{0:N2}", 56789); //result: 56,789.00string str5 = String.Format("{0:N3}", 56789); //result: 56,789.000string str6 = (56789 / 100.0).ToString("#.##"); //result: 567.89string 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#教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表