VB.net 2010 视频教程 VB.net 2010 视频教程 VB.net 2010 视频教程
当前位置:
首页 > 编程开发 > c#教程 >
  • C#教程之提供一个中国身份证号码判断的类(4)

  • 2019-04-13 17:27 来源:未知

  

最后,编写一个管理类,用于统一给外部方法调用 ,当然,你也可以不用这么做,直接实例化15位或者18位的身份证判断类,去实现自己的逻辑:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/// <summary>
/// 身份证管理
/// </summary>
public class ChineseIdManager : ITransient
{
    /// <summary>
    /// 判断身份证是否验证通过
    /// </summary>
    /// <param name="id"></param>
    /// <returns></returns>
    public async Task<bool> IsGrant(string id)
    {
        if (string.IsNullOrWhiteSpace(id))
        {
            throw new ArgumentNullException(nameof(id));
        }
 
        ChineseIdBase checker = null;
        var len = id.Length;
        if (len == 15)
        {
            checker = new ChineseId15Bit();
        }
        else if (len == 18)
        {
            checker = new ChineseId18Bit();
        }
        else
        {
            throw new UserFriendlyException("身份证号码错误");
        }
 
        return await Task.FromResult(checker.IsGrant(id));
    }
}
相关教程