![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
.NET
xuxin_2821
这个作者很懒,什么都没留下…
展开
-
C#4中IEnumerable泛型out T的理解
IEnumerable这个接口非常常见,它是最基础的泛型集合接口,表示可迭代的项的序列。 但是奇怪的是为什么泛型参数要带一个“out”? 经过一番资料查阅后,发现此“out”和C#中的“out”类型参数的“out”并非一个意思。 IEnumerable中的out表示这个接口支持“协变性”。 何谓“协变性”? 简单的理解就是“T”可以变化为T的基类型。说了这么多,感觉还是很抽象,用一段代码表示吧。 IEnumerable<string> collection1 = new List<stri原创 2020-05-23 17:49:57 · 999 阅读 · 0 评论 -
DES跨(C# Android IOS)三个平台通用的加解密方法
DES跨(C# Android IOS)三个平台通用的加解密方法 #region 跨平台加解密(c# 安卓 IOS) // public static string sKey = “12345678”; // /// // /// 解密 // /// // /// 要解密的以Base64 // /// 密钥,且必须为8位 // /// 已解密的字符串 // public s...转载 2019-06-29 00:03:46 · 268 阅读 · 0 评论 -
使用GDI+绘制复杂验证码
创建一个一般处理程序ImgCode.ashx:部分代码如下 using System.Drawing; public void ProcessRequest(HttpContext context) { context.Response.ContentType = "image/jpeg"; //可以调用下面的方法以生成不同类型的验证码 usin...转载 2019-07-30 17:21:47 · 87 阅读 · 0 评论 -
简单的窗体登陆功能(记录错误次数)
private void btnLogin_Click(object sender, EventArgs e) { string loginId = txtLoginId.Text.Trim(); string loginpwd = txtLoginPwd.Text.Trim(); if (!CheckUserError(loginId)) { MessageB...原创 2019-07-26 15:56:58 · 187 阅读 · 0 评论