.NET中大型项目开发必备(6)--IUtility工具介绍
前言:本系列文章适合有初/中级.NET知识的同学阅读(请在电脑上打开页面,获取更好的阅读效果)。
(1)本系列文章,旨在讲述研发一个中大型项目所需要了解的一系列“基本构件”,并提供这些“基本构件”在全网的【最简单】、【最快速】使用方法!!(并不深究技术原理)
(2)通过阅读本系列文章,能让你在正规“项目研发”方面快速入门+进阶,并能达成“小团队构建大网站”的目的。
(3)本系列文章采用的技术,已成功应用到人工智能、产业互联网、社区电商、游戏、金融风控、智慧医疗、等项目上。
在DeveloperSharp框架中,存在两个非常强大的工具接口,一个是IUtility工具接口(提供一系列有用的功能),一个是IDataAccess工具接口(提供数据访问功能)。
本文将具体介绍IUtility。
IUtility所在的命名空间是:DeveloperSharp.Framework.CoreUtility(需从NuGet引用DeveloperSharp包)
它主要提供了如下一系列功能:
application/session/cookie变量设置、路径转换、编码/解码、图片切割、图片缩略、图片加文字水印、图片加图像水印、json序列化、Web服务的远程调用、http调用(get/post)、生成UUID、等。
它初始化的代码如下:
using DeveloperSharp.Framework.CoreUtility; -------------------------- IUtility IU = new Utility();
IUtility内拥有的详细功能方法说明如下:
SetApplicationVar 声明:void SetApplicationVar(string Name, object Value); 用途:设置Application变量 参数:(1) string Name -- 变量名 (2) object Value -- 变量值 返回:(无) SetSessionVar 声明:void SetSessionVar(string Name, object Value) 用途:设置Session变量 参数:(1)string Name -- 变量名 (2) object Value -- 变量值 返回:(无) SetCookieVar 声明:void SetCookieVar(System.Web.HttpCookie HC) 用途:设置Cookie变量 参数:(1)System.Web.HttpCookie HC -- Cookie变量 返回:(无) GetApplicationVar 声明:object GetApplicationVar(string Name) 用途:获取Application变量 参数:(1)string Name -- 变量名 返回:object -- 变量值 GetSessionVar 声明:object GetSessionVar(string Name) 用途:获取Session变量 参数:(1)string Name -- 变量名 返回:object -- Session变量值 GetCookieVar 声明:System.Web.HttpCookie GetCookieVar(string Name) 用途:获取Cookie变量 参数:(1)string Name -- 变量名 返回:String -- Cookie变量 Request 声明:string Request(string Name) 用途:获取传送变量的值 参数:(1)string Name -- 变量名 返回:String -- 变量值 RequestServerVariables 声明:string RequestServerVariables(string ServerVarName) 用途:获取服务器变量的值 参数:(1)string ServerVarName -- 服务器变量名 返回:String -- 服务器变量的值 RequestPhysicalPath 声明:string RequestPhysicalPath(string Path) 用途:获取物理路径 参数:string Path -- 虚拟路径或者相对路径 返回:String -- 物理路径 RedirectToURL 声明:void RedirectToURL(string Url) 用途:重新定向URL地址 参数:(1)string Url -- 要转向的URL地址 返回:(无) DecodeHtml 声明:string DecodeHtml(string Content) 用途:Html解码 参数:(1)string Content -- 需要解码的字符串 返回:String -- 解码后的字符串 DecodeUrl 声明:string DecodeUrl(string Content) 用途:Url解码 参数:(1)string Content -- 需要解码的Url字符串 返回:String -- 解码后的Url字符串 EncodeHtml 声明:string EncodeHtml(string Content) 用途:Html编码 参数:(1)string Content -- 需要编码的字符串 返回:String -- 编码后的字符串 EncodeUrl 声明:string EncodeUrl(string Content) 用途:Url编码 参数:(1)string Content -- 需要编码的Url字符串 返回:String -- 编码后的Url字符串 PictureCut(可参考“图片的裁剪、缩放、与加水印”这篇文章) 声明:void PictureCut(string SourceFile, int CutStartPointX, int CutStartPointY, int CutWidth, int CutHeight, string TargetFile) 用途:图片裁剪 参数:(1)string SourceFile -- 原始图片文件路径 (2)int CutStartPointX --起始裁剪点X坐标 (3)int CutStartPointY --起始裁剪点Y坐标 (4)int CutWidth --裁剪宽度 (5)int CutHeight --裁剪高度 (6)string TargetFile --新生成的目标图片文件路径 返回:(无) PictureThumbnail(可参考“图片的裁剪、缩放、与加水印”这篇文章) 声明:void PictureThumbnail(string SourceFile, int FrameWidth, int FrameHeight, string TargetFile) 用途:图片缩略 参数:(1)string SourceFile -- 原始图片文件路径 (2)int FrameWidth --缩略框的宽度 (3)int FrameHeight --缩略框的高度 (4)string TargetFile --新生成的目标图片文件路径 返回:(无) PictureImageWatermark(可参考“图片的裁剪、缩放、与加水印”这篇文章) 声明:void PictureImageWatermark(string SourceFile, string WatermarkFile, string TargetFile) 用途:图片加“图像”水印 参数:(1)string SourceFile -- 原始图片文件路径 (2)string WatermarkFile --水印图像文件路径 (3)string TargetFile --新生成的目标图片文件路径 返回:(无) PictureImageWatermark(可参考“图片的裁剪、缩放、与加水印”这篇文章) 声明:void PictureImageWatermark(string SourceFile, string WatermarkFile, int x, int y, string TargetFile) 用途:图片加“图像”水印 参数:(1)string SourceFile -- 原始图片文件路径 (2)string WatermarkFile --水印图像文件路径 (3)int x --水印图像的起始X坐标 (4)int x --水印图像的起始Y坐标 (5)string TargetFile --新生成的目标图片文件路径 返回:(无) PictureTextWatermark(可参考“图片的裁剪、缩放、与加水印”这篇文章) 声明:void PictureTextWatermark(string SourceFile, string WaterText, string TargetFile) 用途:图片加“文字”水印 参数:(1)string SourceFile -- 要加水印的图片物理路径 (2)string WaterText --文字内容 (3)string TargetFile --文字字体 返回:(无) PictureTextWatermark(可参考“图片的裁剪、缩放、与加水印”这篇文章) 声明:void PictureTextWatermark(string SourceFile, string WaterText, System.Drawing.Font WaterTextFont, System.Drawing.Brush WaterTextBrush, int x, int y, string TargetFile) 用途:图片加“文字”水印 参数:(1)string SourceFile -- 原始图片文件路径 (2)string WaterText --水印文字 (3)System.Drawing.Font WaterTextFont --水印文字字体 (4)System.Drawing.Brush WaterTextBrush --水印文字笔触 (5)int x --水印图像的起始X坐标 (6)int y --水印图像的起始Y坐标 (7)string TargetFile --新生成的目标图片文件路径 返回:(无) PagePartition(可参考“高效分页”这篇文章) 声明:PagePiece PagePartition(DataTable Table, int PageSize, int PageIndex) 用途:分页功能 参数:(1)DataTable Table -- 需要分页的DataTable (2)int PageSize -- 页面大小 (3)int PageIndex -- 当前页码(最小值为1) 返回:PagePiece -- 页片实体 JsonSerialize 声明:string JsonSerialize(object Obj) 用途:对象转化为JSON 参数:(1)object Obj -- 被转化的对象 返回:string -- JSON字符串 JsonDeserialize 声明:T JsonDeserialize<T>(string jsonText) 用途:JSON转化为对象 参数:(1)string jsonText -- JSON字符串 返回:T -- 对象 GetService(可参考“Web服务的负载均衡”这篇文章) 声明:T GetService<T>() 用途:获取远程/本地服务 参数:(无) 返回:T -- 服务实例 GetService 声明:T GetService<T>(string svcBindType, string svcURL) 用途:获取WCF远程服务 参数:(1)string svcBindType -- 服务调用类型 (2)string svcURL -- 服务地址 返回:T -- 服务实例 HttpGet(可参考“http请求调用”这篇文章) 声明:string HttpGet(string Url) 用途:调用Http-Get请求 参数:(1)string Url -- 调用请求的url地址 返回:String -- 请求结果 HttpPost(可参考“http请求调用”这篇文章) 声明:string HttpPost(string Url, string ParamData = "", Dictionary<string, string> HeaderDic = null, string ContentType = "application/x-www-form-urlencoded"); 用途:调用Http-Post请求 参数:(1)string Url -- 调用请求的url地址 (2)string ParamData -- 提交的参数 (3)Dictionary<string, string> HeaderDic -- 存放http头的键值对 (4)string ContentType -- 请求的编码格式,通常有application/x-www-form-urlencoded(默认设置)、multipart/form-data、application/json三种形式 返回:String -- 请求结果(-107开头表示出错) GenerateId(可参考“分布式唯一Id”这篇文章) 声明:string GenerateId(string Prefix) 用途:生成主键Id (此处生成的是一种分布式唯一Id) 参数:(1)string Prefix -- 前缀词 返回:String -- 主键Id
【附注】:下载示例均已成功运行通过。但有些辅助设置需要自己调整。技术支持+获取更多宝贵资源:请微信扫描文末二维码,备注“进群”!
推荐阅读
- .NET中大型项目开发必备(1)–UUID全球通用唯一识别码
- .NET中大型项目开发必备(2)–CORS跨域访问
- .NET中大型项目开发必备(3)–数据库的负载均衡
- .NET中大型项目开发必备(4)–数据库的读写分离
- .NET中大型项目开发必备(5)–Web服务/WebApi的负载均衡
- .NET中大型项目开发必备(6)–IUtility工具介绍
- .NET中大型项目开发必备(7)–DataAccess数据库访问技术
- .NET中大型项目开发必备(8)–高效分页
- .NET中大型项目开发必备(9)--http请求调用(Post与Get)
- .NET中大型项目开发必备(10)--图片的裁剪、缩放、与加水印
- .NET中大型项目开发必备(11)--使用Redis缓存
- .NET中大型项目开发必备(12)--使用MQ消息队列
- .NET中大型项目开发必备(13)--DataAccess数据库访问技术(续)
- .NET中大型项目开发必备(14)--数据库的负载均衡(续)
如果文章对你有帮助,请点赞、收藏、关注(原创内容,欢迎转载,转载请注明出处) 技术支持+获取更多宝贵资源:微信扫描左侧二维码,备注“进群” 出处:https://www.cnblogs.com/DeveloperSharp/ 本文采用「CC BY 4.0」知识共享协议进行许可,转载请注明作者及出处。 |
posted on 2022-01-20 02:20 DeveloperSharp 阅读(1285) 评论(0) 编辑 收藏 举报