This is a simple solution for a really common problem. I assume that most people do the same as as most other programmers and have a common shared library of code between all their project that they add to and use the components as required.

The problem with a database and a bit field when bound to a gridview normally is not very end user friendly. So to make it end user friendly people tend to either use a case statement inside sql to turn the "1" or "0" into a "Yes" or "No". Or they repeat the same code all over the place in multiple projects using the datarow bound event handler where they use the bit fields.

Here is an alternative solution. In your shared project lib. Add the following
class (adding the correct namespace etc..)

public class BoundYesNo : BoundField
    {   
        protected override string FormatDataValue(object dataValue, bool encode)
        {   
            try
            {   
                bool tmp = (bool)dataValue;

                if (tmp)
                    return "Yes";
                return "No";
            }
            catch (Exception ex)
            {   
                return ex.Message;
            }
        }
    }

When you then add the reference to your web config you can then use the above code just like any other bound field on a gridview in asp.net. Now you have something in all your projects that only require you to write asp code and less c#



Did You find this page useful?

Yes No



Last Modified: 14 December 2016

Releated Posts


2011-10-27 - CSharp - Number Of Cores and Processors
2011-10-04 - CSharp - Thread Queue Example
2011-09-29 - CSharp - Background Thread / Task
2011-09-17 - CSharp - Lookup Hostname
2011-08-29 - C Sharp - StopWatch, The high resolution timer
2011-08-29 - CSharp - IsGuid
2011-08-26 - CSharp - Convert Between Meters and Feet
2011-08-23 - CSharp - ThreadPool and Windows Forms
2011-08-10 - C Sharp - MD5Sum / SHASum
2011-07-22 - CSharp - Fibonacci sum
2011-07-13 - CSharp - Palindrome
2011-07-11 - CSharp - The string Reverse
2011-07-10 - CSharp - Interviews FizzBuzz
2011-06-27 - CSharp - HowTo Parse a URL
2011-06-22 - CSharp - Extending any class
2011-06-13 - ASPNET - Login by username or email
2011-05-22 - MSSQL - Removing the aspnet membership database
2011-05-12 - CSharp - ASPNET Logoff
2011-03-07 - C Sharp - Windows Logoff
2011-03-02 - ASPNET - Dynamic Controls
2011-03-01 - C Sharp - Resize an image by size of height
2011-02-23 - C Sharp / MSSQL Get inserted value of NEWSEQUENTIALID()
2011-02-10 - CSharp - Shutdown or reboot windows
2011-02-10 - CSharp - Wake on Lan (WOL) Packet
2011-02-06 - C Sharp - Gridview Bound Yes No
2011-02-05 - MSSQL - Levenshtein
2011-01-30 - MSSQL - Adding SHASum support
2011-01-30 - MSSQL - Enabling CLR Functions
2011-01-30 - MSSQL - RegEx Support
2011-01-30 - MSSQL - Adding MD5 checksum support