All C# Extension Methods
-
WhereIf
When building a LINQ query, you may need to involve optional filtering criteria. Avoids if statements when building predicates & lambdas for a query. Useful when you don't know at compile time whether a filter should apply. Borrowed from Andrew Robinson. http://bit.ly/1V36G9
-
ToDictionary() - for enumerations of groupings
Converts an IEnumerable<IGrouping<TKey,TValue>> to a Dictionary<TKey,List<TValue>> so that you can easily convert the results of a GroupBy clause to a Dictionary of Groupings. The out-of-the-box ToDictionary() LINQ extension methods require a key and element extractor which are largely redundant when being applied to an enumeration of groupings, so this is a short-cut.
-
OrderBy(string sortExpression)
Orders a list based on a sortexpression. Useful in object databinding scenarios where the objectdatasource generates a dynamic sortexpression (example: "Name desc") that specifies the property of the object sort on.
-
Dump
Dumps the object as a json string. Can be used for logging object contents.
-
String Extensions
String extensions, download CoreSystem Library from codeplex; http://coresystem.codeplex.com
-
DataReader to CSV
Export DataReader to CSV (List<String>). Basic example that to export data to csv from a datareader. Handle value if it contains the separator and/or double quotes but can be easily be expended to include culture (date, etc...) , max errors, and more.
-
ForEach
Shortcut for foreach and create new list
-
Pivot
Groups the elements of a sequence according to a specified firstKey selector function and rotates the unique values from the secondKey selector function into multiple values in the output, and performs aggregations.
-
FormatWithMask
Formats a string with the specified mask
-
ToPagedList
Paging extension method for NHibernate 3.0 and its new query API QueryOver.
-
AddRange<T>()
I have created this AddRange<T>() method on ObservableCollection<T> because the LINQ Concat() method didn't trigger the CollectionChanged event. This method does.
-
Encrypt & Decrypt
Encrypt and decrypt a string using the RSACryptoServiceProvider.
-
Strip Html
Removes any HTML or XML tags from a string. Super simple, but I didn't see anything here like it. I've created similar methods in the past to take into account things like <script> blocks, but I'm not worrying about that here.
-
ToDataTable
Converts an IEnumerable to DataTable (supports nullable types) adapted from http://www.c-sharpcorner.com/UploadFile/VIMAL.LAKHERA/LINQResultsetToDatatable06242008042629AM/LINQResultsetToDatatable.aspx
-
Generic Enum to List<T> converter
http://devlicio.us/blogs/joe_niland/archive/2006/10/10/Generic-Enum-to-List_3C00_T_3E00_-converter.aspx
-
ToJson() and FromJson<T>()
Convert an object to JSON an back
-
GetCurrentDataRow
The System.Windows.Forms.BindingSource has a property to return the current row as DataRowView object. But most of the time we need this as DataRow to manipulate the data. This extension method checks the Current property of BindingSource for nullity, returns null if it is null and returns the current Row as DataRow object if the Current property is not null.
-
IsDate
Wraps DateTime.TryParse() and all the other kinds of code you need to determine if a given string holds a value that can be converted into a DateTime object.
-
ToCamelCase
Convert a String into CamelCase
-
Enum<T>.Parse() and Enum<T>.TryParse()
Parses the specified string value into the Enum type passed. Also contains a bool to determine whether or not the case should be ignored.
-
IEnumerable.Chunk
Splits an enumerable into chunks of a specified size.
-
SafeInvoke
Properly invokes an action if it is required. Best way to handle events and threaded operations on a form.
-
ToObservableCollection<T>()
Convert a IEnumerable<T> to a ObservableCollection<T> and can be used in XAML (Silverlight and WPF) projects
-
IsNull
check value is null
-
ComputeHash
Computes the hash of a string using one of the following algorithms: HMAC, HMACMD5, HMACSHA1, HMACSHA256, HMACSHA384, HMACSHA512,MACTripleDES, MD5, RIPEMD160, SHA1, SHA256, SHA384, SHA512.
-
Get MaxLength attribute from property of an class
Method returns the max length specificed for property
-
IList<T> to Excel file
An extension method that produce a excel file of List<T>. This would be useful if you want to automatically generate a Excel out of any other primative data type collection I provided 1 overloads of this method, that accepts a Path as string to save excel file to location on disk.
-
IsNumeric
Checks if a string value is numeric according to you system culture.
-
DateRange
A simple date range
-
Clone<T>()
Makes a copy from the object.
-
UcFirst
Emulation of PHPs ucfirst()
-
DataTable to CSV export
Export datatable to CSV file
-
SetSocketKeepAliveValues
Using IOControl code to configue socket KeepAliveValues for line disconnection detection(because default is toooo slow)
-
ToSecureString
Converts a string into a "SecureString"
-
Mask
A set of extension methods that make it easy to mask a string (to protect account numbers or other personal data). For example, you could mask a SSN of 123456789 to be ******789.
-
IfNotNull<T, TResult>
if the object this method is called on is not null, runs the given function and returns the value. if the object is null, returns default(TResult).
-
Force Download any file!
Forces your browser to download any kind of file instead of trying to open it inside the browser (e.g. pictures, pdf, mp3). Works in Chrome, Opera, Firefox and IE 7 & 8!
-
IsNotNullOrEmpty
It returns false if given collection is null or empty otherwise it returns true.
-
Randomize
OrderBy() is nice when you want a consistent & predictable ordering. This method is NOT THAT! Randomize() - Use this extension method when you want a different or random order every time! Useful when ordering a list of things for display to give each a fair chance of landing at the top or bottom on each hit. {customers, support techs, or even use as a randomizer for your lottery ;) }
-
Parse<T>
Parse a string to any other type including nullable types.
-
DeepClone
It returns deep copy of the object.
-
ForEach
Shortcut for foreach
-
Storyboard.BeginAsync()
Begin an XAML Storyboard using the async/await pattern instead of using the completed event.
-
IndexOf<T>()
Returns the index of the first occurrence in a sequence by using the default equality comparer or a specified one.
-
ToCSV
An extension method that produce a comman separated values of string out of an IEnumerable<T>. This would be useful if you want to automatically generate a CSV out of integer, string, or any other primative data type collection or array. I provided 2 overloads of this method. One of them accepts a separator and the other uses comma "," as default separator. Also I am using another shortcut extension method for foreach loop.
-
Deserialize<T>
Deserialize an XDocument to a generic type
-
IsValidEmailAddress
Check wheter a string is an valid e-mail address
-
ToCollection<T>()
Convert a IEnumerable<T> to a Collection<T>
-
IsSubclassOfRawGeneric
Is essentially a modified version of Type.IsSubClassOf that supports checking whether a class derives from a generic base-class without specifying the type parameters. For instance, it supports typeof(List<>) to see if a class derives from the List<T> class. The actual code was borrowed from http://stackoverflow.com/questions/457676/c-reflection-check-if-a-class-is-derived-from-a-generic-class.
-
List To DataTable
List To Datatable
-
Truncate
Truncate the specified string based on the given length. Replaces the truncated data to "..."
-
IsValidEmail
Validate Email ID in C#
-
Shuffle
Shuffles an IEnumerable list
-
OrderBy
OrderBy is nice, except if you want to sort by multiple properties or want an easy way to distinguish between ascending and descending.
-
IsWeekend
Lets you easily figure out ifdateTime holds a date value that is a weekend.
-
Load & Save configuration
Two methods that extends DataGridView control to save and load columns configuration to specified XML file. More informations (in Polish, example in English) at: http://kozub.net.pl/2012/02/22/datagridview-konfiguracja-kolumn-oraz-zapis-i-odczyt-stanu/ http://kozub.net.pl/2012/03/21/c-extension-methods/
-
Simplify usage of XmlSerializer
Extension for simplify usage of XmlSerializer class. Add extension to any object serialize it to xml. Add extension to string and stream to deserialize objects. All extensions with first check about default constructor
-
Slice<T>(int start, int end)
Returns the range of elements between the specified start and end indexes. Negative numbers count from the end, rather than the start, of the sequence. Values of 'end' larger than the actual sequence are truncated and do not cause index-out-of-bounds exceptions. Functionally very similar to Python's list[x:y] slices.
-
Transpose
transposes the rows and columns of its argument
-
Age
Get the actual age of a person
-
Intersects
Returns true if two date ranges intersect.
-
Distinct
Provides a Distinct method that takes a key selector lambda as parameter. The .net framework only provides a Distinct method that takes an instance of an implementation of IEqualityComparer<T> where the standard parameterless Distinct that uses the default equality comparer doesn't suffice.
-
IsPrime
Returns true when a integer is a prime.
-
Left
Returns the first few characters of the string with a length specified by the given parameter. If the string's length is less than the given length the complete string is returned. If length is zero or less an empty string is returned
-
HttpUtility Helpers
Make easily accessible some functions available in HttpUtility into an Extension.
-
ToLogString
Creates a string for logging purposes from an Exception. Includes the InnerException(s), Stacktrace et cetera.
-
ToHashSet<T>
Takes any IEnumerable<T> and converts it to a HashSet<T>
-
IsString
Checks whether the type is string.
-
IsBetween
Checks if the date is between the two provided dates
-
ToList<T>(Func<object, T> func)
Converts an array of any type to List<T> passing a mapping delegate Func<object, T> that returns type T. If T is null, it will not be added to the collection. If the array is null, then a new instance of List<T>() is returned.
-
IsIsin
Determines if a string is a valid ISIN (International Securities Identification Number) code.
-
ToProperCase
Converts string to a title case.
-
IsNullOrEmpty
Determines whether a collection is null or has no elements without having to enumerate the entire collection to get a count.
-
ContainsAny
Checks if a given string contains any of the characters in the passed array of characters.
-
ToPersianNumber
Converts English Numbers to Persian Numbers
-
IsGuid
Checks to see if a string represents a valid GUID. Source of the function: Original code at https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=94072&wa=wsignin1.0#tabs
-
SetCookie(), GetCookie(), DeleteCookie()
Extension methods on HtmlDocument used to read, write and delete cookies in Silverlight applications.
-
GetAttribute
Makes it easier to retrieve custom attributes of a given type from a reflected type.
-
IsIn
Determines if an instance is contained in a sequence. Is the equivalent of Contains, but allows a more fluent reading "if item is in list", specially useful in LINQ extension methods like Where
-
Each<T>
iterates through an IEnumerable<T> and applies an Action
-
DateTimeFormat
This is extension method for format the data time into the string with pattern specific and current culture. For more information please read at my blog http://weblogs.asp.net/thangchung/archive/2010/11/01/datetime-formating-extension-method.aspx
-
IsValidNIP, IsValidREGON, IsValidPESEL
Validation algorithms for Polish identification numbers NIP, REGON & PESEL.
-
Between
c# version of "Between" clause of sql query
-
AddWorkdays
A modification to the AddDay function that adds an integer number of weekdays to a date, starting the count at the first weekday after the current day. This is a typical method for calculating B2B service delivery and billing due dates.
-
TimeSpan ToHumanTimeString
Light-weight extension to output time. If you need additional human readable strings
-
ToString
Concatenates a specified separator String between each element of a specified enumeration, yielding a single concatenated string.
-
ToJson
Json Conversion, uses DataContractJsonSerializer to deserialize item
-
DefaultIfEmpty
returns default value if string is null or empty or white spaces string
-
ToException
Turns any object to Exception. Very useful!
-
Cache()
Caches the results of an IEnumerable.
-
Round to Nearest TimeSpan
Rounds a TimeSpan value to the nearest timespan given
-
ToXML
Serializes an object to XML
-
IsValidUrl
Returns true when a string is a valid url
-
Equals
Equals method that lets you specify on what property or field value you want to compare an object on. Also compares the object types. Useful to use in an overridden Equals method of an object.
-
DrawAndFillRoundedRectangle
Draw and fill a rectangle with some (or all) the angles rounded.
-
toSlug
Generate slugs for friendly urls.
-
Split
somtimes one needs to split a larger collection into multiple smaller ones, this one does so use deferred execution
-
QueryAsync
Returns a Task<IEnumerable<TResult>> to be used with the new async / await keyword.
-
GetPropertyValue
Gets the value of a property in a object through relection
-
GetAttribute
Gets the first assembly attribute of the specified type from the assembly it is called from.
-
EnumToDictionary
Converts an Enumeration type into a dictionary of its names and values.
-
CreateDirectory
Recursively create directory based on the given path. If the given path doesn't exist, it will create until all the folders in the path are satisfied.
-
TakeUntil
The opposite of TakeWhile, inverts the expression and passes to TakeWhile so that instead of taking while an expression is true, you take until an expression is true.
-
IfNotNull
Returns a selected value when the source is not null; null otherwise.
-
FirstOrNull
Returns the null when there's null first element in the sequence instead of throwing an exception
-
Include
Type-safe Include: a completely type-safe way to include nested objects in scenarios with DomainServices and RIA in, for example, Silverlight applications. Example: Include(x=>x.Parent) instead of Include("Parent"). A more detailed explanation can be found at http://www.chrismeijers.com/post/Type-safe-Include-for-RIA-DomainServices.aspx
-
IsNullable
Returns true if the type it is called upon is a System.Nullable<> wrapped type.
-
Log SharePoint Exception via SPDiagnosticsService
Log SharePoint Exception via SPDiagnosticsService for Debugging (result : 0000 Unexpected My Method Name : Attempted to divide by zero. 220da18b-1517-4230-90ac-91117ceaea33 )
-
TimeSpan Sum
C# LINQ has no Sum method for TimeSpan. Here it is1
-
GetLastDayOfMonth
Gets the last date of the month of the DateTime.
-
Move FileInfo and automatically rename it
Moves a FileInfo instance to a specified path and rename it when already existing.
-
Linkify
Takes a string of text and replaces text matching a link pattern to a hyperlink
-
IsBoolean
Checks whether the type is Boolean.
-
ConvertToByteArray
Convert a Stream to an array of bytes.
-
ToUnixTimestamp
Converts a System.DateTime object to Unix timestamp.
-
SelectRandom
This method selects a random element from an Enumerable with only one pass (O(N) complexity). It contains optimizations for argumens that implement ICollection<T> by using the Count property and the ElementAt LINQ method. The ElementAt LINQ method itself contains optimizations for IList<T>
-
RemoveAll()
ICollection interface has List type most of time, so this Extension allows to call RemoveAll() method with the same signature like on List
-
SerializeToXml
Serializes objects to an xml string. (Does not provide error handling if the object is not serializable.)
-
DateDiff
DateDiff in SQL style. The following DateParts are implemented: - "year" (abbr. "yy", "yyyy") - "quarter" (abbr. "qq", "q") - "month" (abbr. "mm", "m") - "day" (abbr. "dd", "d") - "week" (abbr. "wk", "ww") - "hour" (abbr. "hh") - "minute" (abbr. "mi", "n") - "second" (abbr. "ss", "s") - "millisecond" (abbr. "ms")
-
Fill/Draw RoundedRectangle
C# extension to Fill and or Draw RoundedRectangle
-
ToPlural
Returns the plural form of the specified word.
-
TryParse
This method takes away the need for writing two lines for TryParse and gives users an option of returning a default number.
-
AsEnumerable
Allows you to treat an IDataReader from a database query as enumerable so that you can perform LINQ operations on it.
-
ContainsAll
Check whether the specified string contains an array of strings for each.
-
Memoize<T, TResult>
Memoize afunction
-
Contains
Provides an overload to String.Contains to specify a StringComparison (i.e. allows for case-insensitive searches).
-
IsNotNullOrEmpty
Returns true when a given string is not null or empty
-
ToXml
Converts entire DataTabel To XDocument
-
Filter
Allows you to filter an IEnumerable<T>
-
Combinations
Returns all combinations of a chosen amount of selected elements in the sequence.
-
Standard Deviation LINQ extension method
Typical standard deviation formula set in LINQ fluent syntax. For when Average, Min, and Max just aren't enough information.
-
ChangeType
Converts any type to another.
-
FirstDayOfMonth / LastDayOfMonth
Simple way to Get the first and last day of the specified date.
-
ConvertTo<T>
Converts an Array of arbitrary type to an array of type T. If a suitable converter cannot be found to do the conversion, a NotSupportedException is thrown.
-
IsNull
Unified advanced generic check for: DbNull.Value, INullable.IsNull, !Nullable<>.HasValue, null reference. Omits boxing for value types.
-
TimeSpan Average
C# LINQ has no Average method for TimeSpan. Here it is!
-
CreateExcel
Transforms a DataTable in Excel (xls). Requires Excel Library (https://code.google.com/p/excellibrary/)
-
ToDateTime
Gets a nullable DateTime object from a string input. Good for grabbing datetimes from user inputs, like textboxes and querystrings.
-
Datatable to List
Datatable to List
-
GetDisplayName()
Converts the pascal-cased Name property of a type to a displayable name.
-
Validate Email
Validate email id
-
SplitCamelCase
Split any string using camel case pattern.
-
GetMD5
Gets the MD5 value of a given file.
-
Aggregate
Since System.Linq.Enumerable.Aggregate throws a System.InvalidOperationException in case the given list is empty you can't use this function in a complex linq expression. This aggregate version simply returns a defaultvalue if the list is empty
-
IsOdd
Checks whether a number is odd
-
ScaleImage
Scales a Image to make it fit inside of a Height/Width
-
ContainsAny
Checks if a given string contains any of the string array.
-
In
C# version of In clause of sql query.
-
IsEven
Checks whether a number is even
-
IsNullOrEmpty
Determines whether a collection is null or has no elements without having to enumerate the entire collection to get a count.
-
AppendLineFormat
Appends a formatted string and the default line terminator to to this StringBuilder instance.
-
Replace
This extension method replaces an item in a collection that implements the ilist<t> interface
-
GetValueOrDefault<T> for DbDataReader
Helper method to retrieve a nullable value of a column from a datareader.
-
ToDecimal
Convert string to decimal
-
ToInt
It converts string to integer and assigns a default value if the conversion is not a success
-
StringBuilder AppendIf
Makes it possible to conditionally append to a StringBuilder while keeping it fluent
-
Uppercase with null check
Converts a string to upper-case but checks for null strings first
-
ToEnumerable()
Convert an IEnumerator<T> to IEnumerable<T>.
-
IsSet
I did not write this I just found it very useful, check http://stackoverflow.com/questions/7244 for original post.
-
Clone<T>
Clones a DataRow - including strongly typed DataRows.
-
DefaultIfNull
return default value if string is null
-
IsInRange
Determines if a date is within a given date range
-
TryDispose
Dispose an object if it implement IDisposable. Especially useful when working with interfaces and object factories, and IDisposable may or may not found on concrete class.
-
ToEnum
Parse a string value to the given Enum
-
GetBoolean(string fieldName), GetDateTime(string fieldName), etc...
Use the Get[Type] functions that are part of the IDataReader but by passing the field name as a string as opposed to the field ordinal as int. Allows assigning default values for null values returned by the datareader.
-
EqualsAny
Check that the given string is in a list of potential matches. Inspired by StackOverflow answer http://stackoverflow.com/a/20644611/23199
-
int.IsNumber()
Checks if an integer is a number
-
IsValidIPAddress
Validates whether a string is a valid IPv4 address.
-
Return<TIn, TOut>
A 'fluent' logic extension method that takes a value (can be anything) and a function that returns another value (can be anything) based on its logic. This is useful for both evaluating and optionally returning a value without declaring a temporary variable for the value.
-
KB,MB,GB,TB
Simplest way to get a number of bytes at different measures. KB, MB, GB or TB,
-
IsDefault
Returns true if the object it is called upon is the default of its type. This will be null for referece types, zero for integer types, and a default-initialized struct for structs.
-
IsNullOrEmptyOrWhiteSpace
It returns true if string is null or empty or just a white space otherwise it returns false.
-
IsUnicode
IsUnicode
-
IsNumeric
Checks if a string value is numeric
-
Async
Starts execution of IQueryable on a ThreadPool thread and returns immediately with a "end" method to call once the result is needed.
-
Enum Name To Display Name
Convert an CamelCase enum name to displayable string
-
Nl2Br
Convert a NewLine to a Html break
-
IsInRange
Finds if the int is the specified range
-
IsNumeric
Returns true if the type can be considered numeric
-
ToNull
Turns any object to null
-
Standard Deviation LINQ extension method (with overloads)
Typical standard deviation formula set in LINQ fluent syntax. For when Average, Min, and Max just aren't enough information. Works with int, double, float.
-
NotEmpty
Determines if the object is null or empty. string is evaluated with empty. Collections, Arrays and Dictionaries are evaluated for 0 items (items themselves may be null) All other objects are evaluated as null or not null.
-
FindControl<T>
Generic recursive FindControl.
-
Flatten
Flatten an IEnumerable<string>
-
Right
Returns the last few characters of the string with a length specified by the given parameter. If the string's length is less than the given length the complete string is returned. If length is zero or less an empty string is returned
-
Inject object properties into string
Supplements String.Format by letting you get properties from objects
-
ToEnum
ToEnum - with nullable type
-
Strip
Strip a string of the specified substring or set of characters
-
SelectDistinct
"SELECT DISTINCT" over a DataTable. Handles multiple columns selection.
-
Strongly Typed Databinding
This is an extension that I use for doing strongly typed databinding to controls in a winforms project. I dislike using strings to databind because they do not generate compiler errors when the bound object changes. This extension allows you to, instead of using a string, use an expression to bind to for both the control property and the object property.
-
Session GetValue
A cleaner way to get values from Session
-
Slice of IEnumerable
Returns count elements, beginning from the specified
-
ReadToEnd
Returns a string with the content of the input stream
-
IsLeapYear
Returns whether or not a DateTime is during a leap year.
-
FirstOrDefault
First or default extension method for NHibernate 3.0 and its new query API QueryOver.
-
DbConnection.ExecuteNonQuery
Execute a SQL command directly on a DbConnection. Needless to say that the other ExecuteXXX methods can be implemented as well. Implementing the method at DbConnection level makes it available for SQLConnection, OleDbConnection, ...
-
GetValueOrDefault
Some time you want to get a nested property but a property in the chain is null then to avoid exception of Null Exception you must check all property in chain opposite of null
-
IsBoolean()
Tells whether a value can be coalesced into a boolean
-
Clone
Allows you to clone an etire generic list of cloneable items.
-
IsStrongPassword
Validates whether a string is compliant with a strong password policy.
-
Reverse
Reverses the order of the list that you wish to enumerate.
-
Email
Send an email using the supplied string.
-
SelectRows
Wraps the usage of some DataTable.DefaultView properties to return sorted rows filtered on a custom filterexpression. For documentation on what to put in the whereExpression and the orderByExpression, refer to the MSDN documentation of DataTable.DefaultView.RowFilter and DataTable.DefaultView.Sort.
-
IsInteger
Checks whether the type is integer.
-
Popup.ShowAsync()
Show an XAMP Popup using the async/await pattern instead of using the completed event.
-
ToFriendlyDateString
The idea behind the ToFriendlyDateString() method is representing dates in a user friendly way. For example, when displaying a news article on a webpage, you might want articles that were published one day ago to have their publish dates represented as "yesterday at 12:30 PM". Or if the article was publish today, show the date as "Today, 3:33 PM".
-
WordCount
Count all words in a given string. Excludes whitespaces, tabs and line breaks.
-
Replace
Case-insensitive replace method
-
ToMd5Hash
Convert a input string to a byte array and compute the hash.
-
GetValue
A bunch of extensions that work with SearchResult to retrieve its data.
-
Enum HasDescription
Multiple ways to check if an enum has description
-
Clamp
Limit a value to a certain range. When the value is smaller/bigger than the range, snap it to the range border.
-
Append() and Prepend()
Append() adds a value to the end of the sequence. Prepend() adds a value to the beginning of the sequence. This is usefull if you are not using .NET Core or .NET Framework 4.7.
-
IsEmpty / IsNotEmpty
Checks if any value type is empty.
-
GetChildren
This is a recursive function to get all child controls under the target control.
-
FormatSize
Nicely formatted file size. This method will return file size with bytes, KB, MB and GB in it. You can use this alongside the Extension method named FileSize.
-
FindParent
A simple type safe method to find a parent control
-
ToInteger
Convert datatable field to int32
-
CSharpCompile
Compiles a string into an assembly. .NET 4
-
Extend
An extenssion function to work like the extend method of javascript. It takes the object and merge with oder, but only if the property of the other object has value.
-
ToShamsiDate
Convert DateTime to ShamsiDateString
-
Format String
Shortcut for System.String.Format
-
ToHashTable
Converts a DataRow into a Hashtable.
-
ToEnum
Convert a String Value to Corresponding Enum Value
-
Elapsed
Get the elapsed time since the input DateTime
-
CopyAsync
Method for copying a folder to a new location
-
ToCsv
Returns a string that represent a csv representation of the referenced T in the IEnumerable<T>. You can also generate a columns header (the first row) with the name of the serialized properties. You can specify the name of the properties to include in the csv file. If you don't specify anything it will includes all the public properties.
-
EndOfTheMonth
Returns datetime corresponding to last day of the month
-
ThrowIf
Just throw if you can
-
ToBytes
Converts a file on a given path to a byte array.
-
JSON to XML
json to xml
-
ToString
returns a formatted string on a nullable date
-
LeftOf
Returns the left of a string, terminated by a certain character. If the character isn't found the whole string is returned. Ex: string s = "ab-23"; s.LeftOf(s, '-') returns "ab"
-
Evaluate/Calculate
This is submitted as two extension methods as they work together. It is based off of an class designed by sfabriz @ http://www.osix.net/modules/article/?id=761 He has another class that does something a little different but I thought this was a wonderful piece of code so encapsulated it here. I only claim authorship of the conversion and not the underlying logic.
-
IsNullOrEmpty
Check either IList object is null or empty.
-
List AddElement
Make adding to list fluent and conditioned
-
With and Without
Fake immutability in an existing list class by adding a "With" and "Without" method
-
Persian DateTime
Convert DateTime To PersianDate
-
HasItems
Determines whether an IEnumerable contains any items
-
Select
It returns reader lines which can be retrieved from lamba statement
-
Concat
Adds an element to an IEnumerable (System.Linq.Concat only adds multiple elements)
-
Strip
Strips unwanted characters on the specified string.
-
GetSHA1Hash
Calculates the SHA1 hash value of a string and returns it as a base64 string.
-
FixPersianChars
متدی برای حل مشکل وارد کردن ي و ك عربی توسط کاربر و تبدیل به ی و ک فارسی. توسط محمد کمائی
-
Remove
Removes items from a list based on a condition you provide. I have a feeling this should exist already but I can't find it. You can get the same results using 'where' but this method operates on the collection itself.
-
XML to Json
XML to Json
-
EndOfTheDay
Returns datetime corresponding to day end
-
ToColor
Convert a (A)RGB string to a Silverlight Color object
-
ToHtmlTable
Converts an IEnumberable<T> to an HTML DataTable.
-
CSVSplit
Given a line from a CSV-encoded file, split it into fields.
-
ToPlural
Returns the plural of a word.
-
Add<T>
A generic method to add databinding to a control. This method brings type safety for the sake of better code maintainability.
-
NextSunday
Get's the date of the upcoming Sunday.
-
ToStream
Converts a String to a MemoryStream
-
GetValue
Gets the value of a databinded property-path from an object. The property can have the form "Product.Type.Group".
-
Modify Querystring
Modify the querystring of the current URL (or a passed in URL) to either add, update or remove parameters.
-
IDictionary.GetValue
Better way to read a C# Dictionary
-
Zip
Merges three sequences by using the specified predicate function.
-
IsNullOrDBNull
We all know that objects can be null, but when dealing with databases, a new null type shows up, the DBNull. This extention method detects it along with the null.
-
AddTime
Adds time to existing DateTime
-
RemoveDuplicates
Removes items from a collection based on the condition you provide. This is useful if a query gives you some duplicates that you can't seem to get rid of. Some Linq2Sql queries are an example of this. Use this method afterward to strip things you know are in the list multiple times
-
ToNameValueCollection
Splits a string into a NameValueCollection, where each "namevalue" is separated by the "OuterSeparator". The parameter "NameValueSeparator" sets the split between Name and Value.
-
ToUrlString
takes a string, replacing special characters and spaces with - (one dash per one or many contiguous special charachters or spaces). makes lower-case and trims. good for seo.
-
CopyTo
Copies a stream to another stream using a passed buffer. it also has an overload to pass a buffer length.
-
SetInputScope
Set the InputScope of TextBox on a Windows 7 Phone.
-
ToMemoryStream
Returns a MemoryStream from a Byte array
-
Enum.ParseWithDefault
.NET 4.5 version of Enum.ParseUnstrict
-
ToStringFormat
StringFormat Extension Style
-
convert Internet dot address to network address
Csharp equivalent of Linux / Unix Command: inet_aton. The inet_aton() extension method converts the specified ipaddress, in the Internet standard dot notation, to a network address.
-
SetAllValues
Sets all values.
-
ToInt32
Convert string to int32
-
ToRFC822DateString
Converts a regular DateTime to a RFC822 date string used for RSS feeds
-
Dedup
This method will take any DataTable and remove duplicate rows based on any column.
-
FirstIndex() and LastIndex()
Finds the index of the first of last occurence which matches the predicate.
-
GetValue
Get column value bu name from IDataReader.
-
SplitIntoParts
Splits long string into smaller parts with given length.
-
String format
Extention method to string for String.Format
-
First(), Last(), Any()
Helper methods to simplify development. Prevent common LINQ performance mistakes.
-
DataTableToList
Convert DataTable To List
-
ToDictionary<>
Converts any object to a dictionary
-
GetPermutations
GetPermutations
-
IsGuid
Validate if a String contains a GUID in groups of 8, 4, 4, 4, and 12 digits with hyphens between the groups. The entire GUID can optionally be enclosed in matching braces or parentheses.
-
Raphe
Compare Strings like in SQL
-
Merge
Merges two dictionaries
-
IsDateTime
Checks whether the type is DateTime.
-
AddCssClass
Adds a css class to the webcontrol. Instead of having to pass one string to the CssClass property, you can add them one by one with the AddCssClass extension method. This can come in handy when a webcontrol has a default class (from the ASP.NET markup) and then needs additional classes based on a condition (like whether or not a user is logged in).
-
Limit<>
Limits a value to a maximum. For example this is usefull if you want to feed a progressBar with values from a source which eventually might exceed an expected maximum. This is a generic extension method with IComparable<T> constraint. So every type which implements the IComparable interface benefits from this extension.
-
SplitTo
Splits a string into an enumerable collection of the specified type containing the substrings in this instance that are delimited by elements of a specified Char array
-
RemoveSpecialCharacters
Sometimes it is required to remove some special characters like carriage return, or new line which can be considered as invalid characters, especially while file processing. This method removes any special characters in the input string which is not included in the allowed special character list.
-
GetScreenSize
Calculates the visual size of a string if it would be displayed on the screen, i.e. as the text of a TextBlock.
-
ToUrlSlug
If you get Turkish inputs you can use this method to create url slugs
-
TimeElapsed
Inspiration for this extension method was another DateTime extension that determines difference in current time and a DateTime object. That one returned a string and it is more useful for my applications to have a TimeSpan reference instead. That is what I did with this extension method.
-
ConvertJsonStringToObject
Converts a JSON string to an object
-
ToString
Returns a formatted string on a nullable double
-
None(), OneOf(), Many(), XOf()
Count-based extensions which make checking the length of something more readable. * Updated on 2010-01-16 following suggestion from @Sane regarding the use of Count() in None(). Switched to Any(). Thanks!
-
Or
Returns the first string with a non-empty non-null value.
-
DataGridView columns visibility configuration window
This code allows you to change visibility of columns of any DataGridView component at program runtime. It shows simple window filled with list of columns of DataGridView. You can check columns on the list you want to be visible. Use this code with my other DataGridView extension methods http://extensionmethod.net/csharp/datagridview/load-save-configuration.
-
CheckSheba
چک کردن شماره شبا وارد شده جهت درست بودن فرمت و الگوریتم آن
-
ExpandoObject Print
Dynamic Print method for ExpandoObject
-
ThisWeekMonday
Returns a DateTime representing the Monday of the current week. Depends on System.Globalization
-
ToUIString
Converts a decimal to a string using the current UI culture
-
ToNullableString()
Calling Value.ToString on a System.Nullable<T> type where the value is null will result in an "Nullable object must have a value." exception being thrown. This extension method can be used in place of .ToString to prevent this exception from occurring.
-
IncrementAt<T>
Increment counter at the key passed as argument. Dictionary is <TKey, Int>
-
Piero Alvarez Fuentes
Converts any type to another.
-
AnySafe
Determines if the collection contains any elements. If the argument is null, false will be returned. This is useful when you don't know in advance whether the collection will be null or not.
-
ToDelimitedString<T>(char delimiter, Func<T, PropertyInfo, string> func)
Map any object T to a delimited string and control how that string is formatted.
-
Contains
a case-insensitive version of String.Contains()
-
UcWords
Emulates PHPs ucwords - capitalize each word
-
ConvertTo
Método de Extensión para convertir un String a cualquier tipo de Dato
-
Shuffle
Shuffle an array in O(n) time (fastest possible way in theory and practice!)
-
IsNullOrEmpty
Check whether a collection is null or doesn't contain any elements.
-
ColumnExists
Returns true if the column exists in the DataReader, else returns false
-
AddJavaScript
Dynamically adds a javascript file (.js) to a page even if using master page.
-
Fill
Different way to use String.Format
-
LCM
Uses the Euclidean Algorithm to determine the Least Common Multiplier for an array of integers
-
IsPalindrome
Checks to see if the given text is a valid palindrome or not.
-
Repeat
Repeat a string N times
-
ToBytes
Convert image to byte array
-
GetQueryStringValue
Gets a query string value from a System.Web.UI.UserControl HTTP Request object.
-
Pipe
It is like pipe operator in F# and is useful for chaining function calls especially in expressions. (More in http://foop.codeplex.com/)
-
IsLeapDay
Checks if the current day is a leap day
-
Like SQL on C#
An C# extension method based on "LIKE" operator of T-SQL.
-
IndexOf
Gets the index of the give value in a collection. Is overloaded to take a start parameter as well.
-
If
Executes a function if a given predicate is true
-
Chain
Allows chaining together actions to be taken place on the fly. It works with any object. Its a simple concept but I couldn't find any examples that does the same.
-
ThrowIf
Throw's a given exception is a given predicate is True
-
Resize
takes a byte[], and ints for width/height. returns a byte[] for the new image. keeps a static copy of previously provided sizes to reduce GC activity.
-
Get Percentage
Gets the specified percentage of the given value.
-
NullDateToString
Prints out a nullable datetime's value (if its not null) in the string format specified as a parameter. A final parameter is specified for what to print if the nullable datetime was, in fact, null.
-
IsSingle
Determines whether the collection has exactly one element
-
Shuffle
Shuffle an ArrayList in O(n) time (fastest possible way in theory and practice!)
-
AppendLine (overrride)
Adds an override to the System.Text.StringBuilder AppendLine method which takes a second parameter so can be used like AppendFormat but also creates a new line.
-
Chooser.ShowAsync()
Show Windows Phone Choosers using the async/await pattern instead of using the completed event.
-
AddToEnd
Adds an item to a listbox as the last item, and makes sure it is visible.
-
RightOf
Return the remainder of a string s after a separator c.
-
ToNull
Turns any object to null
-
Object properties to dictionary converter
Takes all public properties of any object and inserts then into a dictionary
-
IsInDesign
Provides a mechanism to wrap WPF user control code that causes an exception on the host WPF window. Notes: I use a separate DLL for all of my extensions which can cause additional challenges. Here are some tips; There are 3 assemblies required 2 of which are easy to add unless you know there nuances; "System.Windows.Controls" this requires "PresentationCore" & "PresentationFramework". "System.Windows" was the most interesting. Look for WindowsBase.DLL if you don't find a reference. Be sure it matches the .Net Framework version you are using..
-
ToDataTable
Used with IDataReader to return a DataTable from the reader.
-
IEnumerable.None
The opposite of Any(). Returns true if the collection is empty, or if no item matches the predicate.
-
GetMostInner
Gets the most inner (deepest) exception of a given Exception object
-
Generates a Hyper Link to redirect user to Authentication form
this method generates a Hyper Link to redirect user to Authentication form . gets Titla attribute of tag and inner Text of Tag and generate tag A . then returns user to referrer page .
-
AddCSS
Dynamically adds a cascading style sheet (a.k.a. CSS) file to a page even if using master page.
-
DeleteFiles
Deletes the files in a certain directory that comply to the searchpattern. The searchpattern can contain * and ? (the normal wildcard characters). The function can also search in the subdirectories.
-
ElapsedSeconds
Gest the elapsed seconds since the input DateTime
-
TakeFirst
Returns the first X characters from a string.
-
EqualsByContent
Checks if two DataTable objects have the same content.
-
Sort (Comparison<T> comparison)
stable, in-place sort (mergesort) of a LinkedList<T>. LinkedList<T> has O(1) insertion, great for large lists. this lets you sort it.
-
ClearControls
clean the controls on a form. Please send suggestions.
-
ItemArrayString
combin datarow's field value to string
-
WriteToConsole
Write all elements in the Enumeration to the Console
-
Identity
Returns the identity of a value
-
ToOracleSqlDate
Converts a Timestamp to a String which can be used in a Oracle SQL Query
-
ToDictionary()
Converts an IEnumerable<IGrouping<TKey,TValue>> from a GroupBy() clause to a Dictionary<TKey, List<TValue>>.
-
PathCombine
Combines an IEnumerable<string> using Path.Combine(), which will use the separator character that is correct for the platform used. It is a shorter and more correct way to combine paths than just using + "\\" + . Requires "using System.IO;" at the top of your extension method class.
-
IsTrue
Returns 'true' if a Boolean value is true.
-
SpinThread
Spins up and executes the action within a thread. Basically fire and forget. Real big question here. Does anybody see any issues with thread management? I would like to update this with any code necessary to manage thread cleanup if necessary. I realize that this has the ability to create unsafe thread referencing if not written such that the contents of the action are exclusive to the scope of the action, but that is outside the purview of this extension
-
Multiply
Multiplies a TimeSpan by a number (int)
-
TryGetAttribute
Try/Get pattern for XDocument attributes
-
ToSentence
Creates a sentence from a variable name.
-
Enum.PaseUnstrict
Permit Enum Parse everytime with valid values using a defaultValue param
-
RewindAndPlay
When a silverlight MediaElement finishes playing, it does not rewind automatically. This extension method sets the MediaElement position at Zero and starts playing.
-
AsBoolean
Converts a string to a boolean value if possible or throws an exception
-
In
Allows you to compare a value to a list of values analogous to the 'In' statement in sql. This makes for a very friendly syntax that is (IMHO) superior to a list of 'or' clauses. Instead of : if (s=="John" || s=="Peter" or s=="Paul") one can write if (s.In("John","Paul","Peter"))
-
IsNull
Essentially the implementation of the sql 'isnull' function, allowing the string type (when null) to be replaced with another value.
-
Convert
Converts from one type to another.
-
FormatSafe
Formats a string safely, without throwing any exceptions. Adds an exception message to the resulting string instead.
-
BeginningOfTheMonth
Returns datetime corresponding to first day of the month
-
BeginningOfTheDay
Returns datetime corresponding to day beginning
-
GetParentDirectoryPath
On the layers of the directory path of a directory
-
ToImage
Create a new Image from a byte array
-
ToArray
Returns an array of int containing all caracters that compose the number.
-
FindChildByName
Uses the VisualTreeHelper in a WPF application to find a child of the type FrameworkElement by its name recursively.
-
RemoveTicks
Legible way to remove ticks from a datetime. Use instead Add negative days
-
FileSize
Get the file size of a given filename.
-
RemoveAtFast
Fast version of the RemoveAt function. Overwrites the element at the specified index with the last element in the list, then removes the last element, thus lowering the inherent O(n) cost to O(1). IMPORTANT: Intended to be used on *unordered* lists only.
-
ThisWeekFriday
Returns a DateTime representing the Friday of the current week. Depends on System.Globalization.
-
Sort algorithms
This is a set of extesion methods that sort a given list more about that on codeplex
-
GetValue
Simply returns the value property from an XmlNode whether it's null or not. Simplifies using XmlDocuments.
-
DeleteChars
Remove from the given string, all characters provided in a params array of chars.
-
Squared
Returns the squared value
-
Thread safe event raising
Allows thread-safely raise any event.
-
toggle for bool
Toggle to bool
-
IsNullOrEmpty
This extension increase the readability of your code.
-
Paul Kemper
DoubleBuffer any control
-
Apply a function
applies a function to the given value - best used with static methods
-
IsNullOrEmpty
Checks if the collection is null or empty
-
GetOrThrow(string connectionStringName)
By default, ConfigurationManager.ConnectionStrings returns null if the requested connection string doesn't exist. Use this extension method if you want something a bit more snappy - an exception.
-
CountOf
Returns whether the sequence contains a certain amount of elements, without having to traverse the entire collection.
-
GetSize
This method extends the DirectoryInfo class to return the size in bytes of the directory represented by the DirectoryInfo instance.
-
Reverse
Reverse a string
-
GetStrMoney
this method is convert integer or float money data to separated comma string that is simple to read
-
Repeat
Repeats a character a given number of times, a little cleaner shortcut than using the string constructor.
-
Call Action / Func
Allows user to call an action / func delegate without having to check for null delegate
-
ForEach
Foreach inline for the IEnumerable<T>.
-
GetAttributes
Gets an enumeration of assembly attributes of the specified type from the assembly it is called from.
-
DefaultIfEmpty
The provided DefaultIfEmpty will only accept an instance of T as the default value. Sometimes you need the default to be an IEnumerable<T>.
-
IndexOfOccurence
Finds the index of the nth occurrence of a string in a string
-
LengthOfTime
return the length of time between the start and current date
-
IsVowel
Recognizes vowels in European languages #i18n
-
CombineWith()
Combines two strings (potentially each of them can be null) with an optional given separator the way you expect. Default separator is a single space.
-
IsLastDayOfTheMonth
Returns whether the given date is the last day of the month.
-
ToStringReccurent
Sometimes it is required to collect exception information in textual format. This method serializes general info about exception and all included exceptions reccursively. I'm using this for sending email error reports.
-
IsEqualMoney
Compares two money (decimal) variables ignoring differences above 0.01. Useful for comparing two calculated decimals. 73,414.IsEqualMoney(73,41) returns true.
-
TrimDuplicates
Trims or removes duplicate delimited characters and leave only one instance of that character. If you like to have a comma delimited value and you like to remove excess commas, this extension method is for you. Other characters are supported too, this includes pipe and colon.
-
RemoveSelectedRows
Removes all selected rows from datagridview and returns the response on success
-
ForEachControl
Runs action delegate for all controls and subcontrols in ControlCollection.
-
CSVQuoted
If a string contains a space or a comma or a newline, quotes it, suitable for a field in a CSV file.
-
To
Creates a range of integers as an IEnumerable<Int32>.
-
ListFiles
List/Get all files in a specified folder using LINQ. Doesn't include sub-directory files.
-
join
--
-
IsNullOrEmptyThenValue
برای حل مشکل مقدار پیشفرض وقتی مقداری وجود ندارد
-
IfType
Execute code only on certain types
-
Tail
Set the stream position to the place where for example 10 lines will be returned when read to end.
-
IsNull
This method returns true if the value is null otherwise it returns false
-
FindControlR
Recursive find control method used for finding controls within templates.
-
CloneExplicit<T>
Creates an explicit copy of the given enumerable where the only values copied are the ones you designate.
-
Is
simple fluent assert for MSTest
-
CopyToFile
Writes the specified StringBuilder to the file using the specified path. If the file already exists, it is overwritten.
-
FindMin() and FindMax()
Selects the object in a list with the minimum or maximum value on a particular property
-
DoubleBuffered
DoubleBuffer any control
-
ToException
Conveniently produces a exception from a given string.
-
SecondsToString
Converts the number of seconds to a string displaying hours and minutes
-
ToSolidColorBrush
Converts a uint (0xFFb2b2b2) to a Silverlight SolidColorBrush object.
-
IsDerived
Checks whether the type is derived from specified type or implemented of specified interface.
-
IntToGuid
Converts an integer to a Guid. This could be used within a unit test to mock objects.
-
Load & Save form configuration
This extension methods allows you to load/save location, size and window state (normal, maximized, minimized) of any form to single XML file at program runtime.
-
UpdateCollection
Updates items from the collection using a modified version of this collection. Useful in MVVM scenarios needing cancellable edition and delayed persistence.
-
Combine
Combines parts of 2 byte arrays
-
Length
Determines how many numbers compose the integer if it was represented as a string.
-
RenameColumn
Rename a code that allows only stating the current name column and a new name.
-
GetUri
Get the uri to an file
-
کد کردن و دی کد کردن رشته در C#
mrchsoft.com
-
GetRandomItem
Return's a random item from a IList<T>
-
ToString(NullOptions)
This ToString() version is null aware. That means it has different behaviors if the object's value is null or DBNull according to the NullOptions enum.
-
Accept
Provides a generic visitor Method Extension for more information, please have a look at my blog post : http://www.dotnetguru2.org/nicolaspenin/index.php?title=generic_visitor_implementation_thanks_to_0&more=1&c=1&tb=1&pb=1
-
GzipString
if you want to lost wight of string , you can use gzip
-
Increment
Increments a integer number by one
-
IsNull
A better IsNull() implementation. Returns true if object value is null or DBNull
-
Resize To Text Width
Resizes width of a Windows control to the text that contains.
-
SplitUp()
This SplitUp() extension method takes a sequence and splits it up into subsequences that each have a maximum length. See http://peshir.blogspot.nl/2011/02/example-of-c-lazy-functional.html for more information.
-
SelectItem
Select a item in a DropDownList by value.
-
DeleteFiles
Delete all files found on the specified folder with a given file extension.
-
FindControlByType
Used in conjunction with GetChildren(), it will return a T from a list of children of a control. If you are looking to return a list of T, use FindControlsByType() at http://www.extensionmethod.net/Details.aspx?ID=310 Get Children is located at: http://www.extensionmethod.net/Details.aspx?ID=309
-
ToInt
tries to parse a string to an int, returns zero if it is unable to parse
-
Upgrade
Upgrades an ArrayList to a generic List
-
DoesNotEndWith
It returns true if string does not end with the character otherwise returns false. If you pass null or empty string, false will be returned.
-
In
Returns true if this string is any of the provided strings. Equivalent to IN operator in SQL. It eliminates the need to write something like 'if (foo == "foo1" || foo == "foo2" || foo == "foo3")'
-
ToView
Extend collections implementing IList to return a DataView. In cases where filters need to be applied to data, this extension will prove handy.
-
FromAppSettings
Get a value from AppSettings section of Web.Config and change its type to the correct one or return a default value in case the key doesn't exists.
-
GetDate
Return the current date and time
-
EnsureFileNameIsUnique
Ensures given file name will return a unique file name, using the format Filename - Copy, or Filename - Copy (n) where n > 1
-
ToBytes
Convert a string to a byte array
-
Add
Add an string array to ListControl ( dropdown, listbox, radiobuttonlist, checkbox).
-
SetInitialFocus
Set the initial focus for a Silverlight ChildWindow.
-
ToLocalCurrencyString
Convert a double to a string formatted using the local currency settings.
-
Times
Repeats an action a number of times.
-
IfIs<T>
optionally executes an Action if the object is of the given type.
-
Extended Extension
Beukes
-
DateTimeFloor;DateTimeCeiling
Floor, Ceiling, Midpoint and Rounding calculations for various time intervals.
-
ToTiny
Converts a given URI to a TinyUrl.com address. Utilises the TinyUrl.com website so requires that the application can access the server
-
ThrowIfDefault
Throws a given Exception if the given object is equal to the default value for the type
-
EnqueueAll
Enqueues all objects from an IEnumerable<T> to the specified queue.
-
Upgrade
Upgrades a hashtable to a generic dictionary
-
bool IsSorted (Comparison<T> comparison)
returns true if a sequence is sorted
-
IndicesOf
Finds all the indexes of the give value or values in an enumerable list
-
ToObservableCollection<T>()
Convert a IEnumerable<T> to a ObservableCollection<T> and can be used in XAML (WPF, Silverlight, Windows Phone & Windows Store) projects
-
IEnumerable(string).Join
Joins a series of strings connected by a separator.
-
ConcatTo
Adds a single element at the beginning of an enumerator
-
ResizeAndFit
This method resizes a System.Drawing.Image and tries to fit it in the destination Size. The source image size may be smaller or bigger then the target size. Source and target layout orientation can be different. ResizeAndFit tries to fit it the best it can.
-
DefaultValue
Returns a the value of a Nullable type if it has a value or it will return a default value
-
SkipLast
take all but the last item from an IEnumerable<T>
-
CleanBRTags
Remove HTML <br \> tags from the string
-
Product
Computes a product of all elements in the sequence.
-
MB
Simplest way to get a number of megabytes.
-
CacheGeneratedResults
Caches the results of generator methods so that expensive enumerations are not repeated if they are enumerated multiple times. Yet it caches the results lazily, allowing for memory efficiency where possible.
-
To
converts one type to another
-
IsNotNull
This method returns true if the value if not null otherwise it returns false.
-
WriteXMLForReport
Many times you need an XSD file for a report. I have created this extension to write the xsd based on the data table I feed it into the directory I set.
-
KB
Simplest way to get a number of kilobytes.
-
MultiplyBy
A simple multiplication extension. Backing idea is to overcome the ridiculous flaw in the Int32 value type when a regular multiplication overflows the Int32 value range. Along these lines it would also be possible to gracefully return larger values as e.g. longs, or as BigInt (when the BCL team gets around to implementing it ;-). But the example here sticks to the bounds of the Int32 range.
-
DataBind
Bind to a ListControl (Dropdownlist, listbox, checkboxlist, radiobutton) in minimal amounts of code. Also returns true false if items are in the control after binding and sets the selected index to first value.
-
IsMobileValid
For Philippine mobile code but can also be adjusted based on your mobile network code. Check if the given number is a valid formatted international number.
-
IsStatic
Determines if a type is static by checking if it's abstract, sealed, and has no public constructors.
-
DoesNotStartWith
It returns true if string does not start with the character otherwise returns false if you pass null or empty string, false will be returned.
-
ExcelColumnName
Returns the excel column name from a column index
-
Paramaters
This extension method will return all the parameters of an Uri in a Dictionary<string, string>. In case the uri doesn't contain any parameters a empty dictionary will be returned. Somehow I can't believe there is no standard method to do this though... Any additions and/or comments are quite welcome :)
-
LessThan
Returns a boolean value of true if the item being compared is less than the value of the parameter.
-
FindControlsByType
Used in conjunction with GetChildren(), it will return a list of T from a list of children of a control. Get Children is located at: http://www.extensionmethod.net/Details.aspx?ID=309
-
ToObservableCollection
Copies elements from IEnumerable<T> into ObservableCollection<T>. Handy for converting LINQ results into a list appropriate for WPF databinding.
-
RemoveCssClass
Removes a css class from the webcontrol. Let's say you have a webcontrol (a label for example) with more than one css class: "defaultClass loggedIn". With the RemoveCssClass extension method, you can easily remove one of them.
-
Clear
clear the contents of a StringBuilder object
-
Convert
Converts all elements in an enumerable list from the its to a destination type by calling a provided conversion function
-
GetImageCodecInfo
Gets the ImageCodecInfo that corresponds to a ImageFormat.
-
FolderSize
Using LINQ, gets the total size of a specified folder. It can also check sizes of subdirectory under it as a parameter.
-
RandomElements
Returns a number of random elements from a collection
-
ToDistinctDictionary
Creates an IDictionary<TKey, TValue> from the IEnumerable<TSource> instance based on the key selector and element selector. This is distinct by using the built-in index of the dictionary instance for either adding or updating a keys corresponding value.
-
IsNullThenEmpty
A handy extension method for System.String that eliminates this pattern when trying to avoid null reference exceptions. if (someString==null) someString=string.Empty;
-
RemoveColumn
Code that allows deleting a column stating the name
-
ToSpecificCurrencyString
Convert a double to a string formatted using the culture settings (string representation) passed into the procedure.
-
CamelCaseToHumanCase
Turn any string formed with camel case into a human cased string.
-
AsDoesntThrow
Wraps an action with a try...catch of a specific exception
-
Find Sharepoint List Anyway
this method find your list without any Exception by List Name , Title and ListID
-
Repeat
for Repeat String .
-
REExtract
Extracts all fields from a string that match a certain regex. Will convert to desired type through a standard TypeConverter.
-
LoadBitmapFromResource
Create new Bitmap from resource image
-
GetPropertyValue<T>
Get the base value of CrmProperty object. This is used for interacting with DynamicEntity on Microsoft CRM.
-
TimesSelector
Inspired from ye good old ruby on rails, provides you with new DateTime instances based on an integer you provide. Look at realfiction.net -> extension methods for more detail
-
Join
This extension method joins the StringBuilder values
-
In
Returns true when a number is included in the specified collection.
-
ContainsNumericChars
returns true if string contains numeric chars
-
IsDefaultForType
Returns true or false depending on if the given object is equal to the default(T) value of the type.
-
AddWorkDays (fixed version)
Fixed version of AddWorkDays
-
Randomize
Randomize the Items in the list
-
GetFirst
get fist n charactor in string
-
InvokeAction
A set of Dispatcher extenstions that make it easy to cleanly queue lambdas on the Dispatcher.
-
WithVar
Improve readability of string.Format
-
Between
Works on Comparables to check whether the checked value is between two other values. Check relaifciotn.net -> extension methods for more details.
-
IsNullOrEmpty
Indicates whether the specified IEnumerable collection is null or empty
-
WrapEachWithTag
Creates a string that is each the elements' ToString() values wrapped in the 'tag' that is passed as a param. Good for converting an IEnum<T> into a block of HTML/XML.
-
In
Determines whether a IEnumerable<T> contains a specific value
-
WriteTo
Writes the entire contents of this stream to another stream using a buffer.
-
Cycle
Repeats a sequence forever.
-
IsNotHidden
Filters out directories that are hidden
-
RemoveClickEvent
Remove click event from given button.
-
ThrowIfAny
Throws a given exception is any value in a set passes a given predicate
-
ToSortedString
Returns an alphabetically sorted list for all public and instance properties, along with its associated values.
-
TimesOrUntil
Attempts to retrieve a valid a result from your function one or more times with an optional 'in between' step (i.e. delay). Replaces a common code pattern with a more readable, shared pattern.
-
LastChar
Select Last character in string .
-
Split
Extension method to split string by number of characters.
-
Split
Split by expression
-
ScrollToBottom
Scrolls to the bottom of a Textbox.
-
HandleOnce
Creates a wrapper for the given event handler which unsubscribes from the event source immediately prior to calling the given event handler.
-
IsBetween
Checks whether the given integer value is between the start and end value.
-
ExcelColumnIndex
Returns the excel column index from a column name
-
ContainsSameKeys<>
Checks if the two dictionaries have the same keys
-
In
Filters a list based on a comma-separated list of allowed values. This is a lot more concise than using a number of 'or' clauses
-
RandomString
Return a random string of a chosen length
-
IsValidCodeMelli
صحت کد ملی
-
EnqueueWithCapacity
Sometimes you may need a Queue<T> that, once it hits a capacity, dequeues items automatically to maintain a certain maximum. While it may be best to derive a new type from Queue<T>, this will get it done much more quickly. This is very useful for maintaining a rolling average or a "history" feature.
-
NextDayOfWeek
Will return the next occurring day of week
-
Shorthand Task.Factory.FromAsync (for .NET 4.0)
This extension method series represent shorthand version of Task.Factory.FromAsync (for .NET 4.0)
-
ContainsAll
Check if the string contains all the elements in the array.
-
To
Allows enumaration of sets of characters by expressing them as a range, for example all the lowercase characters. Allows reverse order as well.
-
ToReversedDateTime
Takes a DateTime object and reverses it to an SQL type string (yyyy-mm-dd hh:MM:ss)
-
WPF Controls Lists
Using extensions to provide a similar "Winforms.Controls" collection functionality. When implementing generics with System.Windows.Window extensions the VS2013 compiler starts throwing random exceptions, so following is using a static wrapper and each control type has to separated. On tested using VS2013..
-
HasValueAndEquals
Substitutes this: int? index = GetIndex(); if (index.HasValue && index.Value == 10) ...
-
GetChoiceFieldValues
this method find items of a Choice Field in a Sharepoint List
-
GetMonthDiff
Compute dateTime difference
-
Between
c# version of "Between" clause of sql query with including option
-
GetMessages
Return all messages after call Validate method on Microsoft EnterpriseLibrary Validation Block
-
HasMultipleInstancesOf
Determines whether a string has multiple occurrences of a particular character. May be helpful when parsing file names, or ensuring a particular string has already contains a given character. This may be extended to use strings, rather than a char.
-
Slice()
Takes a section of a string given the start and end index within the string.
-
ToException
String Typed Exception Extension
-
ConstrainToRange
Many times you may wish to impose boundaries on what a certain variable can be. This is especially useful for validating user input. For any comparable, it simply returns the value, truncated by a minimum or maximum
-
Claim Value
C# with get claim value
-
SplitNext
Split the next part of this span with the given separator
-
ContainsAny
Returns if a given string contains any of the characters provided in a params array of strings.
-
ReverseString
for reverse string
-
ToNullable
Converts a string to a primitive type or an enum type. Faster than tryparse blocks. Easier to use, too. Very efficient.
-
GetStringInBetween
Get string in between two seprators
-
InnerTruncate
Truncates the given string by stripping out the center and replacing it with an elipsis so that the beginning and end of the string are retained. For example, "This string has too many characters for its own good."InnerTruncate(32) yields "This string has...its own good."
-
Each
Iterates over all the elements in a collection and performs the given action, usually given as a lambda.
-
ConvertDataTableToHTML
Extension Method which converts Datatable to HTML table
-
NullStringToEmptyString
If input is null, returns empty string. Otherwise returns original input. After using this method, you can use all string methods without the danger of null exception.
-
Say
Speaks any object using the speech synthesis API
-
RemoveTraillingZeros
Remove trailling zeros from a decimal value
-
Randomize
Randomizes am IEnumerable<T>
-
DataTable to List
Datatable to List
-
ToMouseInfo
Converts a complex multitouch, pressure sensitive silverlight stylus object to a simple MouseInfo object.
-
GetNestedXml
This one allows you to get nested XML from within a node. Let's say you're parsing an HTML file using the XDocument class and you want to pull out the nested code including tags. This is what you can use!
-
ImplementsInterfaces(List<Type> types)
Determines if a class object implements an interface type and returns a list of types it actually implements. If no matching type is found an empty list will be returned.
-
ApplicationBuilderExtensions
.Net Core use package.json files
-
ValidateNumber
Validates that input text is a number
-
EF IQueryable OrderBy string Extension
EF 에서 문자열로 정렬 컬럼 지정하고 싶을때 사용하면 됩니다.
-
GetResponseWithoutException
Allow to get the HttpWebResponse event if the request wasn't successful, in order, for example, to know what went wrong
-
GetData<T>
Get a saved value from the app domain and convert it back to its original type
-
DeleteWithPrejudice and Purge
These 2 extension method allows you to delete a folder or just purge all the folder content even if there are Readonly, System, and/or Hidden attributes files in it. The default Delete method doesn't work if there are files with Readonly, System, and/or Hidden attributes.
-
In
Checks if object is any of provided values separated by comma
-
ShowWebPage
This extension method trigers the default navigator with the address pointed by the string
-
MaxObject
Selects the object in a list with the maximum value on a particular property
-
FristChar
Select Frist character in string .
-
SplitPascalCase
Splits the given string by pascal case.
-
StartOfWeek
TakeStartOfWeek
-
Quick writeline
Write a variable to System.Diagnostics.Debug.WriteLine() (Or other output method)
-
In
Determines whether a variable of type T is contained in the supplied list of arguments of type T, allowing for more concise code.
-
Formating
formating the string with a custom user-defined format. # sign is input characters.
-
Delegate Type Casting Extension Methods
These extension methods enable type casting between generic Action, generic Func, EventHandler, generic EventHandler and non-generic Action, non-generic Func, non-generic EventHandler as well as generic EventHandler and non generic EventHandler delegates in mscorlib and System.dll assembly.
-
FindCommonAncestor
Finds the nearest common ancestor for type based on the inheritance hierarchy.
-
Intuitive date creation
Allows you to create date very easily, like 19.June(1970)
-
GetSelectedValue
Get the selected value of a DropDownList by returning the value stored in the forms collection. This allows you to turn EnableViewState off on a DropDownList and still easily retrieve the selected value
-
FindImmediateParentOfType<T>
An extension method to find the parent control of a specific type in asp.net
-
ForDatabase
For use with old school ado.net database command parameters. This basically converts the string to System.DBNull.Value if the string is null else it returns the string.
-
BinarySerializer
BinarySerialize a List<T>
-
IsMatch
Matches yourFace to myButt
-
ContainsNoSpaces
Checks if a string contains no spaces
-
ToNullable<> Generic String Extension
Converts a string to a primitive type T, or an enum type T. Faster than tryparse blocks. Easier to use, too. Very efficient. Uses generics so the code is cleaner and more robust than doing a separate convert method for each primitive type.
-
LimitTextLength
Limits a piece of text to a certain maximum length for the purpose of showing it to the user as part of some (G)UI or report that has limited space.
-
WherePrevious
Compare Through a predicate every element of a list with the previous one
-
WriteToXML
Serializes objects into and from XML documents
-
DateTime Use in Library SystemManagement
this extension method is Used in Library System Management for return Recive book Date if you use this method this add to Date.Now 14 Days with change the Year and Month Day
-
UppercaseFirstLetter
Upper case first letter
-
String.IsNotNullThenTrim
Perform a Trim() when the string is not null. If the string is null the method will return null.
-
FormatIf
Conditionally formats any value type based on a Lambda Expression
-
AsNullSafeEnumerable
You don't need check whether the collection is null.
-
Cached
Cache result of IEnumerable iteration. Similar to other implemetations with two advantages: 1 - Not flawed (Dispose of IEnumerator done by compiler) 2- Simplier
-
ReplaceIgnoreCase
ReplaceIgnoreCase
-
TakeFrom
Returns the remaining characters in a target string, starting from a search string. If the search string is not found in the target, it returns the full target string.
-
IndicesOf
Gets all the indexes in which a certain substring appears within the string.
-
ToStringLimit(limit)
Save values checking length
-
decimalToTime
Convert decimal in string Timeformat (hh:mm)
-
ToDouble
Converts a string to a double
-
GetTotalMonthDiff
Compute dateTime difference precisely
-
AppendNode
Append new child XmlElement to base XmlElement.
-
NullableSum
Takes an array of nullable values and sums them up. Can be easily replaced with int?
-
GetFilesInVirtualDirectory
This extension method acts similarly to Directory.GetFiles except that the directory path is expressed as a virtual directory.
-
StringToTimeSpan
Converts a string to a timespan
-
FindParent(string parentName) - For XElement
Find parent XElement from a provided name. Returns null if no match
-
timeToDecimal
Convert string time(hh:mm) in decimal
-
Id
Identity function
-
InsertSorted
Insert an item to a sorted List
-
GetAttribute
get custom attribute helper
-
TimeSpanToString
Converts a timespan to a string displaying hours and minutes
-
Pleuralise
A simple method that adds 's' onto words. used when you return x record(s)
-
RemoveRightIfPresent
Removes end of string if it equals to parameter, otherwise returns origin string
-
IsDate
Determines if specified string is DateTime. Its an improvement on Phil Campbell's version
-
IfNullElse
Check if string is null or white spaces and return null alternate value
-
Perason Correlation Coefficient for a datatable
An extension method that add the possibility calculate the Pearson correlation coefficient using the names of two columns of the data table in question.
-
IsMatchRegex
Check if a string is match with given regular expression pattern
-
String write/save in file
String save/write in file
-
IsNullThen
Replaces NULL with the specified replacement value.
-
IsNotIn
Determines if an instance is not contained in a sequence. Is the equivalent of Contains == false, but allows a more fluent reading "if item is not in list", specially useful in LINQ extension methods like Where.
-
GetSaturday
This code will provide the Sunday DateTime from the week of DateTime object the extension method is called from.
-
NumericUpDown SafeValue()
http://peshir.blogspot.nl/2011/02/safely-set-numericupdown-control-value.html
-
SetLiteralText
Often you have to set the text of lots of literal when databinding a ListView control in ASP.Net. This method lets you write that in one line.
-
BinaryDeserializer
Deserializa um arquivo binario em uma lista generica
-
Nullable Coalesce
Coalesce any like nullable types.
-
EntryEquals
Extension method for comparing dictionaries by elements (key pair values)
-
GetValue
Retrieve Querystring,Params or Namevalue Collection with default values
-
IntegerToTimeSpan
Converts an integer to a timespan
-
Add Data to Dropdownlist,Radiobutton List etc.
Add Data to Dropdownlist,Radiobutton List etc
-
GetMatchValue
Returns a collection of string that matched on the pattern.
-
XML TO Class
Parse XML String to Class
-
DrawCircle
Draw circles on Unity GameObjects
-
Chainable List.Add / typesafe
Allows you to chain .Add method
-
GetSunday
This code will provide the Sunday DateTime from the week of DateTime object the extension method is called from.
-
BooleanExt
Extension Method to Execute Delegate Based on Boolean Value
-
ConvertToDateTimeNullable
ConvertToDateTimeNullable
-
Kerollos Adel
insert item in the top of list
-
EqualsByValue
Determines whether two String objects have the same value. Null and String.Empty are considered equal values.
-
ToFirstAll
This method makes the caps for all words in a string
-
Stuart Sillitoe
Emulation of PHPs ucfirst()
-
Replace
Use this extention method with a lambda expression to replace the first item that satisfies the condition
-
RequireOrPermanentRedirect<T>
Use this method to easily check that a required querystring both exists and is of a certain type. This lets you fire off a few checks in your page_load and then write the rest of the code on the page safe in the knowledge that the querystring exists, has a value and can be parsed as the intended data type. If the querystring is not present or is an invalid type the user is sent to the RedirectUrl. Urls starting with a tilde (~) are also supported. This url is normally the next logical level up the tree such as an admin manaagement page, a product index page or if there isn't an appropriate page then you can send the user back to the homepage.
-
Convert a Rectangular to a Jagged Array
Converts a T[,] (rectangular array) to a T[][] (jagged array).
-
CompressAndEncrypt
Compresses and Encrypts Data
-
Get
IDataReader extension to get values
-
Format
Formats any value type
-
NextAnniversary
Calculates the next anniversary of an event after the initial date on the Gregorian calendar. Use the original event date or the event month/event day as a parameters. The optional parameter, preserveMonth will determine how to handle an event date of 2/29. Set to true will use February 28 for a standard year anniversary and set to false will use March 1 for a standard year anniversary.
-
Nullable Coalesce
Coalesce any like nullable types.
-
Arithmetic Expression Validate
Validate a string arithemetic expression
-
Aspose.Word
Is a Extension for the ASPOS Word API.
-
GetBoolString
If you need to show "Yes" or "No" depending on some bool property
-
DisplayDouble
Converts a Double to a String with precision
-
Shorthand Task.Factory.FromAsync (for .NET 4.5)
This extension method series represent shorthand version of Task.Factory.FromAsync (for .NET 4.5)
-
EnqueueAll
Enqueues an aray of items to a Queue rather than having to loop and call Enqueue for each item.
-
big number library
enables calculation of big number
-
AddOrdinal
Add an ordinal to a number,
-
Anjum Riwi
Parse the string in exact data format with null check
-
Check Opened Port
بررسی باز بودن پورت
-
CountNonEmptyItemsInStringArray
Method returns the number of non-null or non-empty items wihtin a string array of length n.
-
CurrentDateTimeInAmsterdam
Get the current date time in Amsterdam
-
All
yield all child controls recursivly
-
Follow
Follows sequence with new element
-
Duplicates within an IEnumerable
Duplicates within an IEnumerable
-
Class to XML
Parse Class to XML
-
NextEnum
Generates random enumeration value
-
isRandomSecure
blowdart random test
-
Extract
Extract a string from an other string between 2 char
-
EnqueueRange
Enqueues a generic collection of items
-
Ori Samara
Extracts the underylying SQL query from an IQueryable datatype
-
Or
Returns the object if it's not null or the first object which is not null.
-
ToObservableCollection
Return observable collection for IList object.
-
ReverseWords
Reverse Words
-
WriteToFileUtf8
Write File in UTF8 from MemoryStream
-
FirstChildOrDefault
Finds first occurrence of a Unity Transform that satisfies the predicate
-
AsSequenceTo
Creates a numeric list of integers starting at the current instance and ending at the maximum value.
-
ExceptWithDuplicates
Returns a List of T except what's in a second list, without doing a distinct
-
AwaitableTaskEnumerableExtensions
Awaitable fluent extensions for enumerables of task
-
Shorthand ReferenceEquals
This extension method represents shorthand version of ReferenceEquals method.
-
GetContrastingColor
Gets a contrasting color based on the current color
-
SelectionValue
Returns Dropdownlist Selected Value as Integer
-
CurrentLocalTimeForTimeZone
Returns the current local time for the specified time zone.
-
CreateSelectList
Convert any list of objects to a select list
-
WeekOfYearISO8601
Gets the number of the week according to the definition of the ISO 8601
-
To<> Convert
To<> Convert
-
Or (with explicit reference for strings)
Returns the object if it's not null or the first object which is not null, With explicit reference for strings
-
et
et
-
ConcatItem / ConcatTo
Concats a single item to an IEnumerable
-
WhereStringIsNotNullOrEmpty
Where string is not null or empty extension method for NHibernate 3.0 and its new query API QueryOver.
-
ReaderWriterLockSlim
Simplified and elegant usage of ReaderWriterLockSlim that
-
Format
string formator,replece string.Format
-
FirstMondayOfYear
FirstMondayOfYear
-
Parse XML Physical Path to Class
Get XML from Physical Path and Parse into Class
-
IsValidIranianSocialCode
بررسی اعتبار کد ملی
-
ValidateAndConvertDictionaryData
Dictionary Extension
-
Read And Write Settings Application
You can mangement Properties Settings.
-
HashBy
Implict hashing
-
toDecimal
Object to decimal?
-
FromIso8601WeekNumber / ToIso8601WeekNumber
Converts to and from ISO 8601 Week numbers
-
StackToSide
if you Enter Some numbers in the Stack one number has inserted in Left Side and another one has inserted in Right Side.Ebrahim5132@gmail.com
-
Zero Index CopyTo
CopyTo without the second parameter, for when you just want to copy array A to array B verbatim and size is not a concern.