AspNet 常有功能函数1.0
1.net 获取客户端ip方法(此方法不是很准确)
public static string GetIP()
{
string str;
if (!string.IsNullOrEmpty(HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]))
{
str = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
if (str.Split(new char[] { '.' }, StringSplitOptions.RemoveEmptyEntries).Length == 4)
{
return str;
}
}
if (!string.IsNullOrEmpty(HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]))
{
str = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].ToString();
if (str.Split(new char[] { '.' }, StringSplitOptions.RemoveEmptyEntries).Length == 4)
{
}
} return str;
return HttpContext.Current.Request.UserHostAddress;
}
2.获取浏览器语言
HttpContext.Current.Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"].ToString();
3.日期字符串转换为标准日期
public static string GetDateTime(object values, string defaultvalues, string strFormat)
{
if (string.IsNullOrEmpty(Convert.ToString(values)))
{
return defaultvalues;
}
return DateTime.ParseExact(values.ToString(), strFormat, null).ToString("yyyy-MM-dd");
}
4.转换为decimal
public decimal GetDecimal(object obj, decimal defaultvalue)
{
decimal result = defaultvalue;
if (obj!=null && Regex.IsMatch(obj.ToString(), @"^([+-]?)\d*[.]?\d*$"))
{
result = Convert.ToDecimal(obj);
}
return result;
}
4.转换为double
public double GetDouble(object obj, double defaultvalue)
{
double result = defaultvalue;
if (obj != null && Regex.IsMatch(obj.ToString(), @"^([+-]?)\d*[.]?\d*$"))
{
result =Math.Round(Convert.ToDouble(obj),2,MidpointRounding.ToEven);
}
return result;
}
5.转换为Int
public int GetInt(object obj, int defalutvaule)
{
int result = defalutvaule;
if (obj != null && Regex.IsMatch(obj.ToString(), @"^\d*$"))
{
result =Convert.ToInt32(obj);
}
return result;
}
6.获取request参数
public string GetParamValue(string paramkey,int type)
{
string result = "";
if (type==1)
{
result= HttpContext.Current.Request.QueryString[paramkey] != null ? HttpContext.Current.Request.QueryString[paramkey].ToString() : "";
}
if(type==2){
result= HttpContext.Current.Request.Form[paramkey] != null ? HttpContext.Current.Request.Form[paramkey].ToString() : "";
}
return result;
}
7.金额转为大写
public static string CapitalNum(string numeric)
{
string str = numeric;
string str2 = "";
string str3 = "仟佰拾亿仟佰拾万仟佰拾元角分";
str = str + "00";
int index = str.IndexOf(".");
if (index >= 0)
{
str = str.Substring(0, index) + str.Substring(index + 1, 2);
}
str3 = str3.Substring(str3.Length - str.Length);
for (int i = 0; i < str.Length; i++)
{
str2 = str2 + "零壹贰叁肆伍陆柒捌玖".Substring(int.Parse(str.Substring(i, 1)), 1) + str3.Substring(i, 1);
}
return str2;
}
AspNet 常有功能函数1.0的更多相关文章
- 在.net4的环境下使用Microsoft.AspNet.SignalR.Client 2.4.0
我的环境是运行在.net 4 framework,并且使用了signalr 在重连的时候发现,运行的服务被关闭了.找不到合适的处理的办法.因为报错是 说明: 由于未经处理的异常,进程终止.异常信息: ...
- csc.rsp Nuget MVC/WebAPI 5.0、SignalR 2.0、Rx、Json、Azure、EntityFramework、OAuth、Spatial
# This file contains command-line options that the C# # command line compiler (CSC) will process as ...
- EF升级6.0数据库链接不上问题
昨天搞了个mvc4 先从net4.0 升级4.5后 数据库连接不上了, 然后升级ef未最新的6.1 居然还报错 不到方法:“System.Data.Objects.ObjectContext S ...
- asp.net 4.0+ webform 程序中集成mvc4混合应用
vs2015之后新建web站点可以很轻松的搭建mvc与webform的混合应用,vs2012下其实也可以通过简单的几部也可以实现,具体如下: 1.新建packages.config文件,里面加上必要的 ...
- ASP.NET Core 1.0 部署 HTTPS (.NET Framework 4.5.1)
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
- 将asp.net webapi的运行时版本由4.0升级到4.5.1时遇到的问题及解决
更新package 更改.net运行时的版本之后,出现了错误提示,说需要改新以下组件: EntityFramework, EntityFramework.zh-Hans, Microsoft.AspN ...
- MVC使用ASP.NET Identity 2.0实现用户身份安全相关功能,比如通过短信或邮件发送安全码,账户锁定等
本文体验在MVC中使用ASP.NET Identity 2.0,体验与用户身份安全有关的功能: →install-package Microsoft.AspNet.Identity.Samples - ...
- 如何在 .Net Framework 4.0 项目上使用 OData?
最新的 Microsoft ASP.NET Web API 2.1 OData 5.1.0 已只能在 .Net Framework 4.5 的安装了,如果要在 VS2010的 .Net Framewo ...
- ASP.NET 4.0 Webform Bundles 压缩css, js,为什么放到服务器不行
参考文章: http://blog.csdn.net/dyllove98/article/details/8758149 文章说的很详细. 但是本地是可以完美展示(我的本地环境有4.0 也有4.5) ...
随机推荐
- HDU 3923 Invoker | 暑训Day1 C题填坑
暑训第一天,专题为组合数学与概率期望. 最近一个月都没有学习新的知识,上午听聚聚讲课头脑都是一片空白.加上长期没刷题,下午做练习题毫无感觉.到晚上总算理清了蓝书上的一些概念,跟着榜单做题.最后唯独剩下 ...
- sql语句怎么看效率?
1.数据库设计当面: 对查询进行优化,应该尽量避免全表扫描,首先应考虑在where及order by设计的列上加索引. d.索引并不是越多越好,索引可以提高查询效率,同时降低了insert和updat ...
- Vue 将本地图片上传到阿里云
一.获取服务器通行证(即获取AccessKey和accessKeySecret) getAccess () { let that = this let url = '服务器地址' let params ...
- 线段树区间更新+区间求和模板(数组实现)洛谷p3372,p3373
模板题目1:https://www.luogu.org/problemnew/show/P3372 懒惰标记讲解:https://www.cnblogs.com/wushengyang/p/11194 ...
- python 可迭代对象,迭代器,生成器的区别及使用
可迭代对象 可迭代对象类型:list,dict,tuple,str,set,deque等 如何判断一个对象是否是可迭代对象,可以通过dir()方法看它里面有没有__iter__方法,如果有这个方法就是 ...
- Hdfs的列存储和行存储
列可以分开存储,对于重复性高的数据压缩比会高,但是在元组(行shi)恢复会比较消耗性能 于传统列存储不同 是行组会存储于同一节点中,列扫描会比较快(因为只需扫描一个行组)
- storm运行服务器一些错误解决、
java.lang.RuntimeException: Returned channel was actually not established 重启试试 Java.lang.NoSuchMetho ...
- 移植别人的vcpkg包到自己的项目
修改该目录下的文件即可: 或者修改你的项目文件下的所有不对的路径,类似于这种:
- windows console 控制台自启动
var fileName = Assembly.GetExecutingAssembly().Location; System.Diagnostics.Process.Start(fileName);
- 关于dex 64K 引用限制
1.官方文档 https://developer.android.com/studio/build/multidex 主要内容: 什么是64K限制 编码时如何避免64K 限制 拆分dex避免64K 限 ...