我的公共类库
using System;
using System.IO;
using System.Net;
using System.Security.Cryptography;
using System.Text;
using System.Web;
using CY.CommonLibrary.Common;
namespace Lee
{
public class Common
{
public static string ServerIPAndPort = System.Configuration.ConfigurationManager.AppSettings["ServerIPAndPort"];
public static string Md5Key = System.Configuration.ConfigurationManager.AppSettings["Md5Key"];
public static string Test_Swich = System.Configuration.ConfigurationManager.AppSettings["Test_Swich"]; //只要不为空,都为测试模式
/// <summary>
/// 是否处于测试模式.只要不为空,都为测试模式
/// </summary>
/// <returns>布尔值</returns>
public static bool Is_测试模式()
#region
{
if (Test_Swich != "")
{
return true;
}
return false;
}
#endregion
/// <summary>
/// send_发送POST请求
/// </summary>
/// <param name="vServerPage"></param>
/// <param name="vPostData"></param>
/// <returns></returns>
public static string send_发送POST请求(string vServerPage, string vPostData)
#region
{
byte[] dataArray = Encoding.UTF8.GetBytes(vPostData);
//创建请求
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(vServerPage);
request.Method = "POST";
request.ContentLength = dataArray.Length;
request.ContentType = "application/x-www-form-urlencoded";
request.Timeout = 5000;
//创建输入流
Stream dataStream = null;
try
{
dataStream = request.GetRequestStream();
}
catch (Exception)
{
return null;//连接服务器失败
}
//发送请求
dataStream.Write(dataArray, 0, dataArray.Length);
dataStream.Close();
//读取返回消息
string res = string.Empty;
try
{
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
res = reader.ReadToEnd();
reader.Close();
}
catch (Exception ex)
{
return null;//连接服务器失败
}
return res;
}
#endregion
/// <summary>
/// send_发送Get请求
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
public static string send_发送GET请求(string url)
#region
{
string str = "";
HttpWebRequest hwr = WebRequest.Create(url) as HttpWebRequest;
hwr.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
hwr.Method = "GET";
hwr.UserAgent = "Mozilla/5.0 (Windows NT 5.1; rv:34.0) Gecko/20100101 Firefox/34.0";
hwr.ContentType = "application/x-www-form-urlencoded";
hwr.Headers["Accept-Language"] = "zh-cn";
hwr.Timeout = 3000;
try
{
HttpWebResponse _rep = hwr.GetResponse() as HttpWebResponse;
Stream _stream = _rep.GetResponseStream();
StreamReader read = new StreamReader(_stream, Encoding.UTF8);
str = read.ReadToEnd();
_rep.Close();
}
catch (Exception ex)
{
log.WriteLog("商学院数据获取超时? :" + ex.Message + "请求地址为:" + url);
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Write("<style type="text/css">#face{margin:0px auto;background: #9ee675;/* for Webkit */background: -webkit-gradient(linear, left top, left bottom, from(#9ee675), to(#78cb4c));/* for Firefox */background: -moz-linear-gradient(top, #9ee675, #78cb4c);/* for IE */filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#9ee675',endColorstr='#78cb4c'); color:#fff;border:1px solid #fff;border-radius:200px;text-indent:31px;97px;height:97px;font-size:66px;} *{ padding: 0; margin: 0; } div{ padding: 4px 48px;} body{ background: #fff; font-family: "微软雅黑"; color: #333;} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 3.8em;text-align: center; font-size: 36px }</style><div style="padding: 24px 48px;"> <h1 id="face">:(</h1><p>数据超时..</p></div>");
HttpContext.Current.Response.End();
}
return str;
}
#endregion
/// <summary>
/// 发送一张笑脸
/// </summary>
public static void send_smiling_face(string str)
#region
{
HttpContext.Current.Response.Write("<style type="text/css">#face{margin:0px auto;background: #9ee675;/* for Webkit */background: -webkit-gradient(linear, left top, left bottom, from(#9ee675), to(#78cb4c));/* for Firefox */background: -moz-linear-gradient(top, #9ee675, #78cb4c);/* for IE */filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#9ee675',endColorstr='#78cb4c'); color:#fff;border:1px solid #fff;border-radius:200px;text-indent:31px;97px;height:97px;font-size:66px;} *{ padding: 0; margin: 0; } div{ padding: 4px 48px;} body{ background: #fff; font-family: "微软雅黑"; color: #333;} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 3.8em;text-align: center; font-size: 36px }</style><div style="padding: 24px 48px;"> <h1 id="face">:)</h1><p>" + str + "</p></div>");
}
#endregion
/// <summary>
/// 发送一张哭脸
/// </summary>
/// <param name="str"></param>
public static void send_unhappy_face(string str)
#region
{
HttpContext.Current.Response.Write("<style type="text/css">#face{margin:0px auto;background: #9ee675;/* for Webkit */background: -webkit-gradient(linear, left top, left bottom, from(#9ee675), to(#78cb4c));/* for Firefox */background: -moz-linear-gradient(top, #9ee675, #78cb4c);/* for IE */filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#9ee675',endColorstr='#78cb4c'); color:#fff;border:1px solid #fff;border-radius:200px;text-indent:31px;97px;height:97px;font-size:66px;} *{ padding: 0; margin: 0; } div{ padding: 4px 48px;} body{ background: #fff; font-family: "微软雅黑"; color: #333;} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 3.8em;text-align: center; font-size: 36px }</style><div style="padding: 24px 48px;"> <h1 id="face">:(</h1><p>" + str + "</p></div>");
}
#endregion
/// <summary>
/// 维护中
/// </summary>
public static void Send_repair()
#region
{
if (HttpContext.Current.Session["Current_Shop_Id"].ToNotNullString() != "6634")
{
send_smiling_face("维修中...");
}
}
#endregion
/// <summary>
/// 网页弹出框
/// </summary>
/// <param name="obj"></param>
public static void alert(object obj)
#region
{
HttpContext.Current.Response.Write("<script language=javascript>alert('" + obj.ToString() + "')</script>");
}
#endregion
/// <summary>
/// 网页弹出框
/// </summary>
/// <param name="obj"></param>
public static void alert_back(object obj)
#region
{
HttpContext.Current.Response.Write("<script language=javascript>alert('" + obj.ToString() + "');history.back();</script>");
}
#endregion
/// <summary>
/// 网页弹出框
/// </summary>
/// <param name="obj"></param>
public static void alert_href(object obj, string url)
#region
{
HttpContext.Current.Response.Write("<script language=javascript>alert('" + obj.ToString() + "');window.location.href='" + url + "';</script>");
}
#endregion
/// <summary>
/// 在控制台打印出数据
/// </summary>
/// <param name="obj"></param>
public static void log_Console(object obj)
#region
{
HttpContext.Current.Response.Write("<script>console.log("" + obj + "")</script>");
}
#endregion
/// <summary>
/// 打印
/// </summary>
/// <param name="obj"></param>
public static void print(object obj)
#region
{
HttpContext.Current.Response.Write(obj.ToString());
}
#endregion
/// <summary>
/// 输出,不换行,使用完直接结束
/// </summary>
/// <param name="obj"></param>
public static void echo(object obj)
#region
{
HttpContext.Current.Response.Write(obj.ToString());
}
#endregion
/// <summary>
/// 打印,带换行
/// </summary>
/// <param name="obj"></param>
public static void println(object obj)
#region
{
HttpContext.Current.Response.Write(obj.ToString() + "<br />");
}
#endregion
/// <summary>
/// 结束网页输出
/// </summary>
public static void End()
#region
{
HttpContext.Current.Response.End();
}
#endregion
/// <summary>
/// 清除网页输出
/// </summary>
public static void Clear()
#region
{
HttpContext.Current.Response.Clear();
}
#endregion
/// <summary>
/// ASE_128_ECB_无填充_64Base_加密函数
/// </summary>
/// <param name="content">要加密的内容</param>
/// <param name="key">一定要16位的密钥</param>
/// <returns>加密的字符串(字节)</returns>
public static byte[] Func_AES128加密(string content, string key)
#region
{
byte[] keyArray = UTF8Encoding.UTF8.GetBytes(key);
byte[] toEncryptArray = UTF8Encoding.UTF8.GetBytes(content);
RijndaelManaged rDel = new RijndaelManaged();
rDel.Key = keyArray;
rDel.Mode = CipherMode.ECB;
rDel.Padding = PaddingMode.PKCS7;
ICryptoTransform cTransform = rDel.CreateEncryptor();
byte[] resultArray = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length);
//返回字节数组,可用Convert.FromBase64String()转换为字节
//return Convert.ToBase64String(resultArray, 0, resultArray.Length);
return resultArray;
}
#endregion
/// <summary>
/// ASE_128_ECB_无填充_64Base_解密函数
/// </summary>
/// <param name="content">密串(字节)</param>
/// <param name="keyArray">密钥(字节)</param>
/// <returns>解密后的字符串</returns>
public static byte[] Func_AES128解密(byte[] content, byte[] keyArray)
#region
{
RijndaelManaged rDel = new RijndaelManaged();
rDel.Key = keyArray;
rDel.Mode = CipherMode.ECB;
rDel.Padding = PaddingMode.None;
rDel.BlockSize = 128;
ICryptoTransform cTransform = rDel.CreateDecryptor();
byte[] resultArray = cTransform.TransformFinalBlock(content, 0, content.Length);
return resultArray;
}
#endregion
}
}