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的更多相关文章

  1. 在.net4的环境下使用Microsoft.AspNet.SignalR.Client 2.4.0

    我的环境是运行在.net 4 framework,并且使用了signalr 在重连的时候发现,运行的服务被关闭了.找不到合适的处理的办法.因为报错是 说明: 由于未经处理的异常,进程终止.异常信息: ...

  2. 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 ...

  3. EF升级6.0数据库链接不上问题

    昨天搞了个mvc4  先从net4.0 升级4.5后 数据库连接不上了,  然后升级ef未最新的6.1  居然还报错 不到方法:“System.Data.Objects.ObjectContext S ...

  4. asp.net 4.0+ webform 程序中集成mvc4混合应用

    vs2015之后新建web站点可以很轻松的搭建mvc与webform的混合应用,vs2012下其实也可以通过简单的几部也可以实现,具体如下: 1.新建packages.config文件,里面加上必要的 ...

  5. 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= ...

  6. 将asp.net webapi的运行时版本由4.0升级到4.5.1时遇到的问题及解决

    更新package 更改.net运行时的版本之后,出现了错误提示,说需要改新以下组件: EntityFramework, EntityFramework.zh-Hans, Microsoft.AspN ...

  7. MVC使用ASP.NET Identity 2.0实现用户身份安全相关功能,比如通过短信或邮件发送安全码,账户锁定等

    本文体验在MVC中使用ASP.NET Identity 2.0,体验与用户身份安全有关的功能: →install-package Microsoft.AspNet.Identity.Samples - ...

  8. 如何在 .Net Framework 4.0 项目上使用 OData?

    最新的 Microsoft ASP.NET Web API 2.1 OData 5.1.0 已只能在 .Net Framework 4.5 的安装了,如果要在 VS2010的 .Net Framewo ...

  9. ASP.NET 4.0 Webform Bundles 压缩css, js,为什么放到服务器不行

    参考文章: http://blog.csdn.net/dyllove98/article/details/8758149 文章说的很详细. 但是本地是可以完美展示(我的本地环境有4.0 也有4.5) ...

随机推荐

  1. HDU 3923 Invoker | 暑训Day1 C题填坑

    暑训第一天,专题为组合数学与概率期望. 最近一个月都没有学习新的知识,上午听聚聚讲课头脑都是一片空白.加上长期没刷题,下午做练习题毫无感觉.到晚上总算理清了蓝书上的一些概念,跟着榜单做题.最后唯独剩下 ...

  2. sql语句怎么看效率?

    1.数据库设计当面: 对查询进行优化,应该尽量避免全表扫描,首先应考虑在where及order by设计的列上加索引. d.索引并不是越多越好,索引可以提高查询效率,同时降低了insert和updat ...

  3. Vue 将本地图片上传到阿里云

    一.获取服务器通行证(即获取AccessKey和accessKeySecret) getAccess () { let that = this let url = '服务器地址' let params ...

  4. 线段树区间更新+区间求和模板(数组实现)洛谷p3372,p3373

    模板题目1:https://www.luogu.org/problemnew/show/P3372 懒惰标记讲解:https://www.cnblogs.com/wushengyang/p/11194 ...

  5. python 可迭代对象,迭代器,生成器的区别及使用

    可迭代对象 可迭代对象类型:list,dict,tuple,str,set,deque等 如何判断一个对象是否是可迭代对象,可以通过dir()方法看它里面有没有__iter__方法,如果有这个方法就是 ...

  6. Hdfs的列存储和行存储

    列可以分开存储,对于重复性高的数据压缩比会高,但是在元组(行shi)恢复会比较消耗性能 于传统列存储不同 是行组会存储于同一节点中,列扫描会比较快(因为只需扫描一个行组)

  7. storm运行服务器一些错误解决、

    java.lang.RuntimeException: Returned channel was actually not established 重启试试 Java.lang.NoSuchMetho ...

  8. 移植别人的vcpkg包到自己的项目

    修改该目录下的文件即可: 或者修改你的项目文件下的所有不对的路径,类似于这种:

  9. windows console 控制台自启动

    var fileName = Assembly.GetExecutingAssembly().Location; System.Diagnostics.Process.Start(fileName);

  10. 关于dex 64K 引用限制

    1.官方文档 https://developer.android.com/studio/build/multidex 主要内容: 什么是64K限制 编码时如何避免64K 限制 拆分dex避免64K 限 ...