.NET下的验证码控件John.Controls.ValidateCode2V for .NET beta1

预告下一个作品是选项卡John.Controls.TabularMultiView for .NET(难产ing,由于最近要处理的事情很多,身体上也有点不支,发布时间推迟)


注册了帐号好几久,都没发过一点东西,今天发个,.NET环境下的验证码控件for web form。

 (效果图)
John.Controls.ValidateCode2V for .NET 1.1 beta1 (←点击下载)
John.Controls.ValidateCode2V for .NET 2.0 beta1 (←点击下载)

先发个试用版本,虽说是试用,但也没任何限制,只是for .NET 1.1的版本中
 1public string Code
 2        {
 3            get
 4            {
 5                string text = (string)this.ViewState["Code"];
 6                if (text != null)
 7                {
 8                    return text;
 9                }

10                return string.Empty;
11            }

12            private set
13            {
14                this.ViewState["Code"= value;
15            }

16        }

不支持private set,还望各位达人指点。源代码就懒得发了,包没加密也没混淆,用Reflector看比看我的代码都清晰。

使用方法,把John.Controls.ValidateCode2V.dll文件放到网站项目的bin文件夹中,对其添加引用(至于如何添加大家可以baidu/google),然后在工具栏的地方右键“选择项”,点“浏览”选择刚刚放在bin文件夹的John.Controls.ValidateCode2V.dll文件既可像普通控件一样使用。

下面是拉到页面后生成的代码
<JohnControls:ValidateCode ID="ValidateCode1" runat="server" />

用的不是Cooike也不是Session保存生成的验证码,而用了ViewState,个人感觉这样更加符合.NET的编程风格。
因为用的是事件触发机制,所以在页面cs文件里的Page_Load事件添加以下代码。
protected void Page_Load(object sender, EventArgs e)
        
{
            
if (!IsPostBack)
            
{
                ValidateCode1.ChangeCode();
            }

        }

运行前请在根目录处新建一个temp的文件夹供放临时文件用,temp是默认的,可以通过设置控件的ImageURLPath属性改变文件夹名。
原文地址:https://www.cnblogs.com/matong/p/780013.html