MSCL超级工具类(C#),开发人员必备,开发利器
MSCL超强工具类库
是基于C#开发的超强工具类集合,涵盖了日常B/S或C/S开发的诸多方面,包含上百个常用封装类(数据库操作类全面支持Mysql、Access、Oracle、Sqlserver、Sqlite等数据库,常用字符串处理类,内存容器类,Session/Cookie/Cache类,Config配置文件帮助类,数据类型转换类,进制转换类,时间日期帮助类,数据加密解密类,文件/目录操作类,文件下载类,FTP操作类,图片上传/下载类,图片常用处理类-翻转,模糊,水印,缩略等,Json辅助类,Log日志类,Http封装类,Email邮件封装类,NOPI操作类-无依赖Office组件实现execl导入导出利器,Execl/CSV操作类,Until常用工具类,数据分页类,远程采集类,JS封装类,Reg正则验证类,Request请求类,随机数生成类,序列化反序列化封装类,XML操作类,ZIP压缩和解压类等等等。。。此处省略一万字),即拿即用,封装类附带调用示例和参数注释,全傻瓜式调用,简单易用。拥有此超强工具类,能大大的提高C#开发人员的效率和代码质量,真正做到“工具在手,一有尽有”,让苦逼的广大程序猿朋友,早日脱离苦海,畅游在代码的世界里 ^_^,如需购买MSCL超级工具类库源码,请扫码博客右侧二维码购买
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Reflection;
using System.Data;
using System.Data.SqlClient;
using System.Web; namespace MSCL
{
/// <summary>
/// 日志帮助类
/// </summary>
public class LogHelper
{ /// <summary>
/// 记录错误信息
/// </summary>
/// <param name="ex">错误</param>
public static void ErrorLog(Exception ex)
{
string dir = Path() + @"/Log/" + DateTime.Now.ToString("yyyy-MM") + "/";
string fileName = "log_" + DateTime.Now.ToString("dd") + ".txt";
string path = dir + fileName;
StreamWriter sw = null;
try
{
Directory.CreateDirectory(dir);
sw = new StreamWriter(path, true);
sw.WriteLine(string.Format("-------------{0}--------------", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss ffff")));
sw.WriteLine(ex.ToString());
sw.WriteLine();
sw.Flush();
}
catch { }
finally
{
if (sw != null)
{
sw.Close();
sw = null;
}
}
} /// <summary>
/// 记录错误信息
/// </summary>
/// <param name="str">错误信息</param>
public static void ErrorLog(string str)
{
string dir = Path() + @"/Log/" + DateTime.Now.ToString("yyyy-MM") + "/";
string fileName = "log_custome_" + DateTime.Now.ToString("dd") + ".txt";
string path = dir + fileName;
StreamWriter sw = null;
try
{
Directory.CreateDirectory(dir);
sw = new StreamWriter(path, true);
sw.WriteLine(string.Format("-------------{0}--------------", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss ffff")));
sw.WriteLine(str);
sw.WriteLine();
sw.Flush();
}
catch { }
finally
{
if (sw != null)
{
sw.Close();
sw = null;
}
}
} /// <summary>
/// 拿到项目所在目录
/// </summary>
/// <returns></returns>
private static string Path()
{
string path = HttpContext.Current.Server.MapPath("~/");
return path;
}
}
}
MSCL超级工具类(C#),开发人员必备,开发利器的更多相关文章
- Web 开发人员必备的随机 JSON 数据生成工具
在 Web 开发中,经常会需要一些测试数据来测试接口或者功能时候正确.JSON Generator 就是这样一款生成随机 JSON 数据的在线工具,Web 开发人员必备,记得收藏和分享啊. 您可能感兴 ...
- .Net开发人员必备工具下载
.Net开发人员必备工具下载 本人亲测下载地址: Win8.1破解工具下载: http://pan.baidu.com/s/1eQf2UiQ 可激活版本 Windows Vista Busines ...
- Web 开发人员必备的12款 Chrome 扩展程序
之前已经分享过一些帮助 Web 开发人员和设计师的 Chrome 扩展,这次我们继续展示一组很有用的 Chrome 应用程序.这些免费的 Chrome 应用程序可以简化您的工作流程,为了加快您的工作流 ...
- 50个Android开发人员必备UI效果源码[转载]
50个Android开发人员必备UI效果源码[转载] http://blog.csdn.net/qq1059458376/article/details/8145497 Android 仿微信之主页面 ...
- SQL点滴17—使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识
原文:SQL点滴17-使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识 在开发过程中会遇到需要弄清楚这个数据库什么时候建的,这个数据库中有多少表,这个存储过程长的什么样子等等信息 ...
- 【特别推荐】Web 开发人员必备的经典 HTML5 教程
对于我来说,Web 前端开发是最酷的职业之一,因为你可以用新的技术发挥,创造出一些惊人的东西.唯一的问题是,你需要跟上这个领域的发展脚步,因此,你必须不断的学习,不断的前进.本文将分享能够帮助您快速掌 ...
- Android开发工具综述,开发人员必备工具
安卓开发工具汇总.开发者必备.安卓开发过程中须要用到各种工具,作为一名安卓开发者,有木有感到亚历山大,那么多工具! 今天给大家汇总了一下安卓开发工具,安卓开发者必备利器. 1.Draw 9-Patch ...
- Android开发人员必备的10个开发工具
工欲善其事,必先利其器,Android SDK 本身包含很多帮助开发人员设计.开发.测试和发布 Android 应用的工具,在本文中,我们将讨论 10 个最常用的工具. 1.Eclipse ADT E ...
- Android开发人员必备的10 个开发工具
工欲善其事,必先利其器,Android SDK 本身包含很多帮助开发人员设计.开发.测试和发布 Android 应用的工具,在本文中,我们将讨论 10 个最常用的工具. 1.Eclipse ADT ...
随机推荐
- 数据库时间内接受的是lang类型的时间 分为三种字段 第一种只存日期 第二种存日期+时间 第三种时间戳
数据库时间内接受的是lang类型的时间 分为三种字段 第一种只存日期 第二种存日期+时间 第三种时间戳
- jsp当做第二个servlet request的生命周期 请求 响应 不管中间经历多少个servlet 只要最后一个serlvt执行后 则生命周期结束 request的域消失
jsp当做第二个servlet request的生命周期 请求 响应 不管中间经历多少个servlet 只要最后一个serlvt执行后 则生命周期结束 request的域消失
- hdu 2151 Worm (DP)
Worm Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- P4316 绿豆蛙的归宿
题意翻译 「Poetize3」 题目背景 随着新版百度空间的上线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿. 题目描述 给出一个有向无环图,起点为1终点为N,每条边都有一个长度,并且从起点出 ...
- 用select (多路复用)模拟一个 socket server
需求:用select (多路复用)模拟一个 socket server.可以接收多并发. 1. 一开始是检测自己,如果我有活动了,就说明有客户端要连我了. #用select去模拟socket,实现单线 ...
- HDOJ.1257 最少拦截系统 (贪心)
最少拦截系统 点我挑战题目 题意分析 一开始理解错了这道题.这么多个导弹排好序不只需要1个拦截系统吗.后来发现自己真傻.那出这个题还有啥意思,反正都需要一个.(:′⌒`) 给出n个导弹,这n个导弹的顺 ...
- [AHOI2008] 逆序对
link 我们可以很容易的推断出$-1$是单调不降的,若$i>j$且$a_i$与$a_j$都没有填数,若填完之后$a_i>a_j$或者$a_i<a_j$,则对答案产生影响的只在$[i ...
- 【简单算法】18.实现strStr()
题目: 实现 strStr() 函数. 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始).如果不存 ...
- vim 打开中文乱码
[root@yu ~]# find / -name vimrc/etc/vimrc [root@yu ~]# vim /etc/vimrc set fileencodings=utf-8,gb2312 ...
- ReentrantLock和synchronized区别和联系?
相同:ReentrantLock提供了synchronized类似的功能和内存语义,都是可重入锁. 不同: 1.ReentrantLock功能性方面更全面,比如时间锁等候,可中断锁等候,锁投票等,因此 ...