Click here to Skip to main content
12,350,451 members (25,189 online)
Click here to Skip to main content

Stats

121K views
4.3K downloads
156 bookmarked
Posted

Ultimate .NET Credit Card Utility Class

, 29 Aug 2007 CPOL
A powerfully simple .NET utility class for validating and testing credit card numbers in C# and VB.
CredCardUtilityTestsCS
CreditCardUtilityTests
bin
Debug
CreditCardUtility.dll
CreditCardUtilityTest.dll
nunit.framework.dll
CreditCardUtilityTests.csproj.user
Properties
CreditCardTestSiteCS
Bin
CreditCardUtility.dll
RadAjax.Net2.dll
RadInput.Net2.dll
images
innerBkgnd.png
loading4.gif
pageBkgn.jpg
UltimateCreditCardUtility.gif
CreditCardUtilityCS
bin
Debug
CreditCardUtility.dll
CreditCardUtility.csproj.user
Properties
CreditCardTestSiteVB
Bin
CreditCardUtility.dll
RadAjax.Net2.dll
RadInput.Net2.dll
images
innerBkgnd.png
loading4.gif
pageBkgn.jpg
UltimateCreditCardUtility.gif
CreditCardUtilityTestsVB
CreditCardUtilityTests
bin
Debug
CreditCardUtility.dll
CreditCardUtilityTests.dll
nunit.framework.dll
CreditCardUtilityTests.vbproj.user
My Project
Application.myapp
CreditCardUtilityVB
CreditCardUtility
bin
Debug
CreditCardUtility.dll
CreditCardUtility.pdb
My Project
Application.myapp
Imports Bluelaser.Utilities

Partial Class _Default
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        If Not Page.IsPostBack Then
            'Display test credit card numbers
            Me.lblMc.Text = CreditCardUtility.GetCardTestNumber(CreditCardTypeType.MasterCard).Replace(" ", "-")
            Me.lblVisa.Text = CreditCardUtility.GetCardTestNumber(CreditCardTypeType.Visa).Replace(" ", "-")
            Me.lblDisc.Text = CreditCardUtility.GetCardTestNumber(CreditCardTypeType.Discover).Replace(" ", "-")
            Me.lblAmex.Text = CreditCardUtility.GetCardTestNumber(CreditCardTypeType.Amex).Replace(" ", "-")
        End If
    End Sub

    Protected Sub btnValidate_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnValidate.Click
        If txtCard.Text.Length > 0 Then
            Dim cardNum As String = txtCard.Text.Trim()

            If CreditCardUtility.IsValidNumber(cardNum) Then
                Dim cardType As CreditCardTypeType = CreditCardUtility.GetCardTypeFromNumber(cardNum)
                Dim strCardType As String = IIf((cardType.ToString() = Nothing), "Unknown", cardType.ToString())

                showMessage([String].Format("You have entered a valid card number. The card type is {0}.", strCardType), True)
            Else
                showMessage("Card failed Luhn test. Please enter a valid card number.", False)
            End If
        Else
            showMessage("Please enter a card number first.", False)
        End If
    End Sub

    Protected Sub showMessage(ByVal msg As String, ByVal isSuccess As Boolean)
        Me.lblMsg.Text = msg

        If isSuccess Then
            lblMsg.CssClass = "success"
        Else
            lblMsg.CssClass = "fail"
        End If
    End Sub

End Class

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

BlueLaser05
Web Developer
United States United States
Todd Anglin is an Experts Exchange ASP.NET Master and a Telerik Technical Evangelist responsible for building a strong Telerik community across the globe. Before joining Telerik, Todd worked as a developer in a Fortune 200 financial services company in San Antonio as a Systems Analyst supporting applications on a wide range of platforms and technologies, including Unix, Windows Server, Informix, Oracle, and SQL Server. Todd graduated Magna Cum Laude with Business Honors from Mays Business School at Texas A&M University with a BBA in MIS and now resides with his wife in The Woodlands, Texas.

You may also be interested in...

| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.160621.1 | Last Updated 29 Aug 2007
Article Copyright 2007 by BlueLaser05
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid