C#常见应用函数实例小结
作者:pan_junbiao 发布时间:2022-10-17 02:35:46
标签:C#,函数
本文实例总结了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}", 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在大量取值时性能比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#程序设计有所帮助。


猜你喜欢
- 本文实例为大家分享了java pdf加水印的具体代码,供大家参考,具体内容如下引入依赖<dependency> <grou
- 一、添加插件apply plugin: 'maven-publish'二、添加如下配置//打包源码task sourceJa
- Java中的Runnable,Callable,Future,FutureTask的比较Java中存在Runnable、Callable、F
- C#中添加窗口的步骤:1是添加窗口。2是在程序中使用new实例化窗口类对象,并显示窗口。1 添加窗口在解决方案管理器->主项目名称-&
- 听老师说,在以后的学习中大部分的异常都是空指针异常。所以抽点打游戏的时间来查询一下什么是空指针异常一:空指针异常产生的主要原因如下:(1)当
- 制作开机Logo 方法一: Drivers/video/logo/logo_linux_clut224.ppm是默认的启
- 本文介绍了Spring Boot 与DBunit 配合使用方法,分享给大家,具体如下:DBUnit快速上手Springboot 添加 DBu
- 问题引出:最近开了新项目,项目中用到了数据字典,列表查询数据返回的时候需要手动将code转换为name,到前台展示。项目经理表示可以封装一个
- 1.性能考虑,优先选择数组数组在项目开发当中使用的频率是越来越少,特别是在业务为主的开发当中,首先数组没有List,Set等集合提供的诸多方
- 本文介绍了Java中常见死锁与活锁的实例详解,分享给大家,具体如下:顺序死锁:过度加锁,导致由于执行顺序的原因,互相持有对方正在等待的锁资源
- 一、概述在自定义ViewGroup中,很多效果都包含用户手指去拖动其内部的某个View(eg:侧滑菜单等),针对具体的需要去写好onInte
- 在Unity中实现简单的伪时间同步,只是读取数据库所在电脑的当前时间using UnityEngine;using System.Colle
- 前言上一篇文章C# Chart控件标记问题详解,我们对C#Chart控件标记问题做了一系列的处理,今天是对上一篇文章的一个扩展,使
- 如下所示:import java.util.Scanner;public class Main{public static void mai
- 首先使用一个用户提交界面作为举例(文本框,密码框,选择,下拉表单等),效果如下<!DOCTYPE html PUBLIC "
- 什么是雪花算法雪花算法的本质为生成一个64位长度的具有自增性的分布式全局唯一id。在64bits中,会对不同段的位进行划分。可分为:符号段时
- 把idea中的项目导入github仓库中步骤详解做完项目进行云端保存是很必要的,我都是存放在github中。所以废活少说直接开始啦。前提是已
- 网站中为了防止恶意获取验证短信、验证邮箱,都会在点击获取验证码的按钮上做个倒计时的效果,如何实现这个效果,具体内容如下效果图: 代
- 本文介绍为了实现高效并发,虚拟机对 synchronized 做的一系列的锁优化措施高效并发是从 JDK5 升级到 JDK6 后一项重要的改
- 文件目录结构文件目录结构很重要,特别注意的是rule文件要放在主启动类上一级位置,才能够扫描。写pom<dependencies>