• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > C# 常用公共方法

C# 常用公共方法

作者:码农-小菜鸟 字体:[增加 减小] 来源:互联网 时间:2017-05-28

码农-小菜鸟 通过本文主要向大家介绍了c#公共方法,c#常用方法,c#字符串常用方法,c#常用字符串处理方法,c#string类的常用方法等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

C# 常用公共方法,具体内容如下

1.后台调用weburl

string hostUrl = "http://www.a.com?id=123" ;
HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(hostUrl);
myReq.Method = "GET";

HttpWebResponse HttpWResp = (HttpWebResponse)myReq.GetResponse();
Stream myStream = HttpWResp.GetResponseStream();
StreamReader sr = new StreamReader(myStream, Encoding.UTF8);
StringBuilder strBuilder = new StringBuilder();
while (-1 != sr.Peek())
{
strBuilder.Append(sr.ReadLine());
}
sr.Close();
myStream.Close();
HttpWResp.Close();

Newtonsoft.Json.Linq.JObject jo = (Newtonsoft.Json.Linq.JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(strBuilder.ToString());
string resCode = jo["ReturnCode"].ToString();

</div>

2.检测输入URL是否合法 

/// <summary>
 /// 判断网址是否可以访问
 /// </summary>
 /// <param name="Url"></param>
 /// <returns></returns>
 protected bool ChkPageUrl(string url)
 {
  bool result = false;
  try
  {
   HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url);
   myHttpWebRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko";
   myHttpWebRequest.Method = "GET";
   HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
   if (myHttpWebResponse.StatusCode == HttpStatusCode.OK)
   {
    result = true;
   }
   myHttpWebResponse.Close();
  }
  catch
  {
   result = false;
  }

  return result;
 }

</div>

3.批量导出

 /// <summary>
  /// 批量导出
  /// </summary>
  /// <returns></returns>
  public FileResult ExportStu()
  {
   //创建Excel文件的对象
   NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();
   //添加一个sheet
   NPOI.SS.UserModel.ISheet sheet1 = book.CreateSheet("Sheet1");
   int pager_totalcount = (int)Session["pager_totalcount"];
   int totalCount = 0;
   //获取list数据
   List<ArticleEntity> infoList = new AchieveDAL.MyTestDAL().GetArticleList("", pager_totalcount, 1, out totalCount);

   //给sheet1添加第一行的头部标题
   NPOI.SS.UserModel.IRow row1 = sheet1.CreateRow(0);
   //创建时间 名称 商户订单号 | 交易号 对方 金额(元) 状态
   row1.CreateCell(0).SetCellValue("编号");
   row1.CreateCell(1).SetCellValue("标题");
   row1.CreateCell(2).SetCellValue("内容");
   int Width = 256;
   sheet1.SetColumnWidth(0, 10 * Width);
   sheet1.SetColumnWidth(1, 25 * Width);
   sheet1.SetColumnWidth(2, 60 * Width);
   if (infoList != null)
   {
    var list = infoList.OrderByDescending(p => p.ID);

    if (list != null)
    {
     int i = 0;
     //将数据逐步写入sheet1各个行
     foreach (var item in list)
     {
      i = i + 1;
      NPOI.SS.UserModel.IRow rowtemp = sheet1.CreateRow(i);
      rowtemp.CreateCell(0).SetCellValue(item.ID.ToString());
      rowtemp.CreateCell(1).SetCellValue(item.Title == null ? "" : item.Title.ToString());
      rowtemp.CreateCell(2).SetCellValue(item.Content == null ? "" : item.Content.ToString());
     }
    }
   }
   // 写入到客户端 
   System.IO.MemoryStream ms = new System.IO.MemoryStream();
   book.Write(ms);
   ms.Seek(0, System.IO.SeekOrigin.Begin);
   return File(ms, "application/vnd.ms-excel", HttpUtility.UrlEncode("导出", Encoding.UTF8).ToString() + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls");

  }

</div>

4.批量导入 

 <input name="file" type="file" id="file" />
<input type="submit" name="Upload" value="上传" />

/// <summary>
  /// 批量导入
  /// </summary>
  /// <returns></returns>
  [HttpPost]
  public ActionResult ImportStu()
  {
   HttpPostedFileBase file = Request.Files["file"];
   string FileName;
   string savePath;
   if (file == null || file.ContentLength <= 0)
   {
    return Content("<script>alert('上传失败,请选择上传文件!');location.href='/MyTest/MVCPager';</script>");
   }
   else
   {
    string filename = Path.GetFileName(file.FileName);
    int filesize = file.ContentLength;//获取上传文件的大小单位为字节byte
    string fileEx = System.IO.Path.GetExtension(filename);//获取上传文件的扩展名
    string NoFileName = System.IO.Path.GetFileNameWithoutExtension(filename);//获取无扩展名的文件名
    string FileType = ".xls,.xlsx";//定义上传文件的类型字符串
    if (FileType.Contains(".exe"))//EXCEL
    {
     return Content("<script>alert('上传文件类型格式错误,不允许导入exe格式的文件!');location.href='/MyTest/MVCPager';</script>");
    }
    FileName = NoFileName + DateTime.Now.ToString("yyyyMMddhhmmss") + fileEx;
    string path = AppDomain.CurrentDomain.BaseDirectory + "uploads/";
    savePath = Path.Combine(path, FileName);
    file.SaveAs(savePath);

    if (FileType.Contains(fileEx))//EXCEL
    {
     string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + savePath + ";" + "Extended Properties=Excel 8.0";
     OleDbConnection conn = new OleDbConnection(strConn);
     conn.Open();
     OleDbDataAdapter myCommand = new OleDbDataAdapter("select * from [Sheet1$]", strConn);
     DataSet myDataSet = new DataSet();
     try
     {
      myCommand.Fill(myDataSet, "ExcelInfo");
     }
     catch (Exception ex)
     {
      return Content("<script>alert('上传失败," + ex.Message + "!');location.href='/MyTest/MVCPager';</script>");
     }
     //列顺序 标题 内容
     DataTable table = myDataSet.Tables["ExcelInfo"].DefaultView.ToTable();

     //事物 异常回滚
     using (TransactionScope transaction = new TransactionScope())
     {
      for (int i = 0; i < table.Rows.Count; i++)
      {
       ArticleEntity model = new ArticleEntity();
       model.Title = table.Rows[i][0].ToString();
       model.Content = table.Rows[i][1].ToString();
       new AchieveDAL.MyTestDAL().AddArticle(model);
      }
      transaction.Complete();
     }
    }

    return RedirectToAction("MVCPager", "MyTest");
   }
  }

</div>

5.获取客户端的IP地址 

/// <summary>
  /// 获取客户端的IP地址
  /// </summary>
  /// <returns>客户端IP地址</returns>
  public static string Get_ClientIP()
  {
   string result = string.Empty;
   result = HttpContext.Current.Request.Headers["X-Real-IP"]; //Nginx 为前端时获取IP地址的方法
   if (result != null)
    return result;

   if (HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"] != null)//发出请求的远程主机的IP地址
   {
    result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].ToString();
   }
   else if (HttpContext.Current.Request.ServerVariables["HTTP_VIA"] != null)//判断是否设置代理,若使用了代理
   {
    if (HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)//获取代理服务器的IP
    {
     result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
    }
    else
    {
     result = HttpContext.Current.Request.UserHostAddress;
    }
   }
   else
   {
    result = HttpContext.Current.Request.UserHostAddress;
   }
   if (result == "::1")
    result = string.Empty;
   return result;
  }

</div>

6.AES对称加密 

 /// <summary>
 /// 对称加密类
 /// </summary>
 public class AES
 {
  /// <summary>
  //



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C# 常用公共方法

相关文章

  • 2017-05-28深入多线程之:内存栅栏与volatile关键字的使用分析
  • 2017-05-28C#权限管理和设计浅谈
  • 2017-05-28C#实现将汉字转化为2位大写的16进制Unicode的方法
  • 2017-05-28C#通过流写入数据到文件的方法
  • 2017-05-28用C#编写ActiveX控件(二)
  • 2017-05-28C#基本概念列举详解
  • 2017-05-28C#实现异步GET的方法
  • 2017-05-28c#实现pdf的另存为功能
  • 2017-05-28c# 方法可变数量的参数
  • 2017-05-28.NET实现定时发送邮件代码(两种方式)

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C#接口(Interface)用法分析
    • C#从foreach语句中枚举元素看数组详解
    • C#实现开机自动启动设置代码分享
    • 探讨C#中Dispose方法与Close方法的区别详解
    • C#实现组合排列的方法
    • c#实现简单控制台udp异步通信程序示例
    • Question:基于C#连续赋值的面试题(解答)
    • 深入多线程之:深入生产者、消费者队列分析
    • C#设计模式编程中运用适配器模式结构实战演练
    • C#中的数组作为参数传递所引发的问题

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有