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.
-
Parse<T>
Parse a string to any other type including nullable types.
-
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 ;) }
-
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
-
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.
-
Intersects
Returns true if two date ranges intersect.
-
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
-
TimeSpan ToHumanTimeString
Light-weight extension to output time. If you need additional human readable strings
-
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.
-
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.
-
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.
-
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.
-
FirstOrNull
Returns the null when there's null first element in the sequence instead of throwing an exception
-
IfNotNull
Returns a selected value when the source is not null; null otherwise.
-
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
-
TimeSpan Sum
C# LINQ has no Sum method for TimeSpan. Here it is1
-
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 )
-
GetLastDayOfMonth
Gets the last date of the month of the DateTime.
-
Linkify
Takes a string of text and replaces text matching a link pattern to a hyperlink
-
Move FileInfo and automatically rename it
Moves a FileInfo instance to a specified path and rename it when already existing.
-
IsBoolean
Checks whether the type is Boolean.
-
ConvertToByteArray
Convert a Stream to an array of bytes.
-
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>
-
ToUnixTimestamp
Converts a System.DateTime object to Unix timestamp.
-
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.
-
TimeSpan Average
C# LINQ has no Average method for TimeSpan. Here it is!
-
IsNull
Unified advanced generic check for: DbNull.Value, INullable.IsNull, !Nullable<>.HasValue, null reference. Omits boxing for value types.
-
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.
-
SplitCamelCase
Split any string using camel case pattern.
-
Validate Email
Validate email id
-
GetMD5
Gets the MD5 value of a given file.
-
IsOdd
Checks whether a number is odd
-
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
-
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.
-
IsNullOrEmpty
Determines whether a collection is null or has no elements without having to enumerate the entire collection to get a count.
-
In
C# version of In clause of sql query.
-
IsEven
Checks whether a number is even
-
Replace
This extension method replaces an item in a collection that implements the ilist<t> interface
-
AppendLineFormat
Appends a formatted string and the default line terminator to to this StringBuilder instance.
-
GetValueOrDefault<T> for DbDataReader
Helper method to retrieve a nullable value of a column from a datareader.
-
ToDecimal
Convert string to decimal
-
Uppercase with null check
Converts a string to upper-case but checks for null strings first
-
ToInt
It converts string to integer and assigns a default value if the conversion is not a success
-
ToEnumerable()
Convert an IEnumerator<T> to IEnumerable<T>.
-
StringBuilder AppendIf
Makes it possible to conditionally append to a StringBuilder while keeping it fluent
-
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
-
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.
-
IsInRange
Determines if a date is within a given date range
-
ToEnum
Parse a string value to the given Enum
-
EqualsAny
Check that the given string is in a list of potential matches. Inspired by StackOverflow answer http://stackoverflow.com/a/20644611/23199
-
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.
-
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.
-
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, ...
-
FirstOrDefault
First or default extension method for NHibernate 3.0 and its new query API QueryOver.
-
IsBoolean()
Tells whether a value can be coalesced into a boolean
-
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
-
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.
-
WordCount
Count all words in a given string. Excludes whitespaces, tabs and line breaks.
-
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".
-
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.
-
ToMd5Hash
Convert a input string to a byte array and compute the hash.
-
Replace
Case-insensitive replace method
-
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.
-
GetValue
A bunch of extensions that work with SearchResult to retrieve its data.
-
IsEmpty / IsNotEmpty
Checks if any value type is empty.
-
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
-
GetChildren
This is a recursive function to get all child controls under the target 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
-
CopyAsync
Method for copying a folder to a new location
-
Elapsed
Get the elapsed time since the input DateTime
-
ThrowIf
Just throw if you can
-
EndOfTheMonth
Returns datetime corresponding to last day of the month
-
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.
-
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
-
Strip
Strips unwanted characters on the specified string.
-
Select
It returns reader lines which can be retrieved from lamba statement
-
FixPersianChars
متدی برای حل مشکل وارد کردن ي و ك عربی توسط کاربر و تبدیل به ی و ک فارسی. توسط محمد کمائی
-
Concat
Adds an element to an IEnumerable (System.Linq.Concat only adds multiple elements)
-
GetSHA1Hash
Calculates the SHA1 hash value of a string and returns it as a base64 string.
-
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.
-
ToStream
Converts a String to a MemoryStream
-
ToPlural
Returns the plural of a word.
-
NextSunday
Get's the date of the upcoming Sunday.
-
Add<T>
A generic method to add databinding to a control. This method brings type safety for the sake of better code maintainability.
-
GetValue
Gets the value of a databinded property-path from an object. The property can have the form "Product.Type.Group".
-
IDictionary.GetValue
Better way to read a C# Dictionary
-
Modify Querystring
Modify the querystring of the current URL (or a passed in URL) to either add, update or remove parameters.
-
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.
-
CopyTo
Copies a stream to another stream using a passed buffer. it also has an overload to pass a buffer length.
-
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.
-
SetInputScope
Set the InputScope of TextBox on a Windows 7 Phone.
-
Enum.ParseWithDefault
.NET 4.5 version of Enum.ParseUnstrict
-
ToMemoryStream
Returns a MemoryStream from a Byte array
-
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.
-
SplitIntoParts
Splits long string into smaller parts with given length.
-
GetValue
Get column value bu name from IDataReader.
-
String format
Extention method to string for String.Format
-
ToDictionary<>
Converts any object to a dictionary
-
First(), Last(), Any()
Helper methods to simplify development. Prevent common LINQ performance mistakes.
-
GetPermutations
GetPermutations
-
DataTableToList
Convert DataTable To List
-
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.
-
Merge
Merges two dictionaries
-
Raphe
Compare Strings like in SQL
-
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.
-
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).
-
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.
-
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
-
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.
-
CheckSheba
چک کردن شماره شبا وارد شده جهت درست بودن فرمت و الگوریتم آن
-
ToString
Returns a formatted string on a nullable double
-
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.
-
ConvertJsonStringToObject
Converts a JSON string to an object
-
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.
-
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.
-
LCM
Uses the Euclidean Algorithm to determine the Least Common Multiplier for an array of integers
-
ColumnExists
Returns true if the column exists in the DataReader, else returns false
-
Fill
Different way to use String.Format
-
AddJavaScript
Dynamically adds a javascript file (.js) to a page even if using master page.
-
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
-
Pipe
It is like pipe operator in F# and is useful for chaining function calls especially in expressions. (More in http://foop.codeplex.com/)
-
GetQueryStringValue
Gets a query string value from a System.Web.UI.UserControl HTTP Request object.
-
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.
-
Get Percentage
Gets the specified percentage of the given value.
-
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.
-
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
-
ThrowIf
Throw's a given exception is a given predicate is True
-
ToNull
Turns any object to null
-
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.
-
IsSingle
Determines whether the collection has exactly one element
-
Shuffle
Shuffle an ArrayList in O(n) time (fastest possible way in theory and practice!)
-
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.
-
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.
-
RightOf
Return the remainder of a string s after a separator c.
-
AddToEnd
Adds an item to a listbox as the last item, and makes sure it is visible.
-
Chooser.ShowAsync()
Show Windows Phone Choosers using the async/await pattern instead of using the completed event.
-
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..
-
IEnumerable.None
The opposite of Any(). Returns true if the collection is empty, or if no item matches the predicate.
-
ToDataTable
Used with IDataReader to return a DataTable from the reader.
-
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 .
-
GetMostInner
Gets the most inner (deepest) exception of a given Exception object
-
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.
-
AddCSS
Dynamically adds a cascading style sheet (a.k.a. CSS) file to a page even if using master page.
-
ElapsedSeconds
Gest the elapsed seconds since the input DateTime
-
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.
-
Identity
Returns the identity of a value
-
TakeFirst
Returns the first X characters from a string.
-
EqualsByContent
Checks if two DataTable objects have the same content.
-
ClearControls
clean the controls on a form. Please send suggestions.
-
ItemArrayString
combin datarow's field value to string
-
ToDictionary()
Converts an IEnumerable<IGrouping<TKey,TValue>> from a GroupBy() clause to a Dictionary<TKey, List<TValue>>.
-
WriteToConsole
Write all elements in the Enumeration to the Console
-
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.
-
ToOracleSqlDate
Converts a Timestamp to a String which can be used in a Oracle SQL Query
-
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)
-
ToSentence
Creates a sentence from a variable name.
-
Enum.PaseUnstrict
Permit Enum Parse everytime with valid values using a defaultValue param
-
TryGetAttribute
Try/Get pattern for XDocument attributes
-
RewindAndPlay
When a silverlight MediaElement finishes playing, it does not rewind automatically. This extension method sets the MediaElement position at Zero and starts playing.
-
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"))
-
Convert
Converts from one type to another.
-
AsBoolean
Converts a string to a boolean value if possible or throws an exception
-
IsNull
Essentially the implementation of the sql 'isnull' function, allowing the string type (when null) to be replaced with another value.
-
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
-
RemoveTicks
Legible way to remove ticks from a datetime. Use instead Add negative days
-
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.
-
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.
-
FileSize
Get the file size of a given filename.
-
GetValue
Simply returns the value property from an XmlNode whether it's null or not. Simplifies using XmlDocuments.
-
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
-
toggle for bool
Toggle to bool
-
DeleteChars
Remove from the given string, all characters provided in a params array of chars.
-
Thread safe event raising
Allows thread-safely raise any event.
-
Squared
Returns the squared value
-
IsNullOrEmpty
This extension increase the readability of your code.
-
Apply a function
applies a function to the given value - best used with static methods
-
Paul Kemper
DoubleBuffer any control
-
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.
-
IsNullOrEmpty
Checks if the collection is null or empty
-
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
-
Repeat
Repeats a character a given number of times, a little cleaner shortcut than using the string constructor.
-
GetStrMoney
this method is convert integer or float money data to separated comma string that is simple to read
-
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>.
-
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>.
-
GetAttributes
Gets an enumeration of assembly attributes of the specified type from the assembly it is called from.
-
LengthOfTime
return the length of time between the start and current date
-
IndexOfOccurence
Finds the index of the nth occurrence of a string in a string
-
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.
-
IsVowel
Recognizes vowels in European languages #i18n
-
IsEqualMoney
Compares two money (decimal) variables ignoring differences above 0.01. Useful for comparing two calculated decimals. 73,414.IsEqualMoney(73,41) returns true.
-
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.
-
To
Creates a range of integers as an IEnumerable<Int32>.
-
ForEachControl
Runs action delegate for all controls and subcontrols in ControlCollection.
-
RemoveSelectedRows
Removes all selected rows from datagridview and returns the response on success
-
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.
-
join
--
-
ListFiles
List/Get all files in a specified folder using LINQ. Doesn't include sub-directory files.
-
CSVQuoted
If a string contains a space or a comma or a newline, quotes it, suitable for a field in a CSV file.
-
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.
-
FindControlR
Recursive find control method used for finding controls within templates.
-
IsNull
This method returns true if the value is null otherwise it returns false
-
FindMin() and FindMax()
Selects the object in a list with the minimum or maximum value on a particular property
-
Is
simple fluent assert for MSTest
-
CloneExplicit<T>
Creates an explicit copy of the given enumerable where the only values copied are the ones you designate.
-
CopyToFile
Writes the specified StringBuilder to the file using the specified path. If the file already exists, it is overwritten.
-
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.
-
IntToGuid
Converts an integer to a Guid. This could be used within a unit test to mock objects.
-
IsDerived
Checks whether the type is derived from specified type or implemented of specified interface.
-
UpdateCollection
Updates items from the collection using a modified version of this collection. Useful in MVVM scenarios needing cancellable edition and delayed persistence.
-
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.
-
Combine
Combines parts of 2 byte arrays
-
Length
Determines how many numbers compose the integer if it was represented as a string.
-
GetRandomItem
Return's a random item from a IList<T>
-
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
-
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
-
Resize To Text Width
Resizes width of a Windows control to the text that contains.
-
Increment
Increments a integer number by one
-
IsNull
A better IsNull() implementation. Returns true if object value is null or DBNull
-
SelectItem
Select a item in a DropDownList by value.
-
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
-
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.
-
DeleteFiles
Delete all files found on the specified folder with a given file extension.
-
Upgrade
Upgrades an ArrayList to a generic List
-
ToInt
tries to parse a string to an int, returns zero if it is unable to parse
-
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")'
-
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.
-
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
-
ToBytes
Convert a string to a byte array
-
EnsureFileNameIsUnique
Ensures given file name will return a unique file name, using the format Filename - Copy, or Filename - Copy (n) where n > 1
-
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.
-
Extended Extension
Beukes
-
DateTimeFloor;DateTimeCeiling
Floor, Ceiling, Midpoint and Rounding calculations for various time intervals.
-
IfIs<T>
optionally executes an Action if the object is of the given type.
-
ToTiny
Converts a given URI to a TinyUrl.com address. Utilises the TinyUrl.com website so requires that the application can access the server
-
Upgrade
Upgrades a hashtable to a generic dictionary
-
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.
-
IEnumerable(string).Join
Joins a series of strings connected by a separator.
-
IndicesOf
Finds all the indexes of the give value or values in an enumerable list
-
bool IsSorted (Comparison<T> comparison)
returns true if a sequence is sorted
-
ToObservableCollection<T>()
Convert a IEnumerable<T> to a ObservableCollection<T> and can be used in XAML (WPF, Silverlight, Windows Phone & Windows Store) projects
-
DefaultValue
Returns a the value of a Nullable type if it has a value or it will return a default value
-
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.
-
Product
Computes a product of all elements in the sequence.
-
ConcatTo
Adds a single element at the beginning of an enumerator
-
SkipLast
take all but the last item from an IEnumerable<T>
-
To
converts one type to another
-
CleanBRTags
Remove HTML <br \> tags from the string
-
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.
-
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.
-
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.
-
IsNotNull
This method returns true if the value if not null otherwise it returns false.
-
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.
-
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 :)
-
IsStatic
Determines if a type is static by checking if it's abstract, sealed, and has no public constructors.
-
ToObservableCollection
Copies elements from IEnumerable<T> into ObservableCollection<T>. Handy for converting LINQ results into a list appropriate for WPF databinding.
-
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.
-
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.
-
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
-
LessThan
Returns a boolean value of true if the item being compared is less than the value of the parameter.
-
GetImageCodecInfo
Gets the ImageCodecInfo that corresponds to a ImageFormat.
-
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
-
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.
-
FolderSize
Using LINQ, gets the total size of a specified folder. It can also check sizes of subdirectory under it as a parameter.
-
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
-
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
-
ToSpecificCurrencyString
Convert a double to a string formatted using the culture settings (string representation) passed into the procedure.
-
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.
-
GetPropertyValue<T>
Get the base value of CrmProperty object. This is used for interacting with DynamicEntity on Microsoft CRM.
-
In
Returns true when a number is included in the specified collection.
-
LoadBitmapFromResource
Create new Bitmap from resource image
-
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
-
IsDefaultForType
Returns true or false depending on if the given object is equal to the default(T) value of the type.
-
ContainsNumericChars
returns true if string contains numeric chars
-
AddWorkDays (fixed version)
Fixed version of AddWorkDays
-
Randomize
Randomize the Items in the list
-
WithVar
Improve readability of string.Format
-
InvokeAction
A set of Dispatcher extenstions that make it easy to cleanly queue lambdas on the Dispatcher.
-
GetFirst
get fist n charactor in string
-
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
-
ToSortedString
Returns an alphabetically sorted list for all public and instance properties, along with its associated values.
-
Split
Extension method to split string by number of characters.
-
ThrowIfAny
Throws a given exception is any value in a set passes a given predicate
-
RemoveClickEvent
Remove click event from given button.
-
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 .
-
HandleOnce
Creates a wrapper for the given event handler which unsubscribes from the event source immediately prior to calling the given event handler.
-
Split
Split by expression
-
IsBetween
Checks whether the given integer value is between the start and end value.
-
ScrollToBottom
Scrolls to the bottom of a Textbox.
-
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
-
IsValidCodeMelli
صحت کد ملی
-
RandomString
Return a random string of a chosen length
-
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..
-
Between
c# version of "Between" clause of sql query with including option
-
GetMonthDiff
Compute dateTime difference
-
GetChoiceFieldValues
this method find items of a Choice Field in a Sharepoint List
-
HasValueAndEquals
Substitutes this: int? index = GetIndex(); if (index.HasValue && index.Value == 10) ...
-
ToException
String Typed Exception Extension
-
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.
-
GetMessages
Return all messages after call Validate method on Microsoft EnterpriseLibrary Validation Block
-
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
-
SplitNext
Split the next part of this span with the given separator
-
Claim Value
C# with get claim value
-
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
-
ConvertDataTableToHTML
Extension Method which converts Datatable to HTML table
-
Each
Iterates over all the elements in a collection and performs the given action, usually given as a lambda.
-
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."
-
Say
Speaks any object using the speech synthesis API
-
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.
-
RemoveTraillingZeros
Remove trailling zeros from a decimal value
-
DataTable to List
Datatable to List
-
Randomize
Randomizes am IEnumerable<T>
-
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!
-
ToMouseInfo
Converts a complex multitouch, pressure sensitive silverlight stylus object to a simple MouseInfo object.
-
GetResponseWithoutException
Allow to get the HttpWebResponse event if the request wasn't successful, in order, for example, to know what went wrong
-
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
-
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.
-
GetData<T>
Get a saved value from the app domain and convert it back to its original type
-
SplitPascalCase
Splits the given string by pascal case.
-
ShowWebPage
This extension method trigers the default navigator with the address pointed by the string
-
EF IQueryable OrderBy string Extension
EF 에서 문자열로 정렬 컬럼 지정하고 싶을때 사용하면 됩니다.
-
In
Checks if object is any of provided values separated by comma
-
MaxObject
Selects the object in a list with the maximum value on a particular property
-
FristChar
Select Frist character in string .
-
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
-
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.
-
FindImmediateParentOfType<T>
An extension method to find the parent control of a specific type in asp.net
-
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
-
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
-
WriteToXML
Serializes objects into and from XML documents
-
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
-
ToStringLimit(limit)
Save values checking length
-
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.
-
GetTotalMonthDiff
Compute dateTime difference precisely
-
ToDouble
Converts a string to a double
-
decimalToTime
Convert decimal in string Timeformat (hh:mm)
-
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.
-
FindParent(string parentName) - For XElement
Find parent XElement from a provided name. Returns null if no match
-
StringToTimeSpan
Converts a string to a timespan
-
Id
Identity function
-
timeToDecimal
Convert string time(hh:mm) in decimal
-
InsertSorted
Insert an item to a sorted List
-
TimeSpanToString
Converts a timespan to a string displaying hours and minutes
-
GetAttribute
get custom attribute helper
-
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.
-
String write/save in file
String save/write in file
-
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.
-
IsMatchRegex
Check if a string is match with given regular expression pattern
-
IsNullThen
Replaces NULL with the specified replacement value.
-
GetSaturday
This code will provide the Sunday DateTime from the week of DateTime object the extension method is called from.
-
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.
-
NumericUpDown SafeValue()
http://peshir.blogspot.nl/2011/02/safely-set-numericupdown-control-value.html
-
BinaryDeserializer
Deserializa um arquivo binario em uma lista generica
-
EntryEquals
Extension method for comparing dictionaries by elements (key pair values)
-
GetValue
Retrieve Querystring,Params or Namevalue Collection with default values
-
Nullable Coalesce
Coalesce any like nullable types.
-
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.
-
CompressAndEncrypt
Compresses and Encrypts Data
-
Convert a Rectangular to a Jagged Array
Converts a T[,] (rectangular array) to a T[][] (jagged array).
-
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.
-
Get
IDataReader extension to get values
-
Arithmetic Expression Validate
Validate a string arithemetic expression
-
Nullable Coalesce
Coalesce any like nullable types.
-
Aspose.Word
Is a Extension for the ASPOS Word API.
-
DisplayDouble
Converts a Double to a String with precision
-
GetBoolString
If you need to show "Yes" or "No" depending on some bool property
-
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
بررسی باز بودن پورت
-
CurrentDateTimeInAmsterdam
Get the current date time in Amsterdam
-
CountNonEmptyItemsInStringArray
Method returns the number of non-null or non-empty items wihtin a string array of length n.
-
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
-
IsValidIranianSocialCode
بررسی اعتبار کد ملی
-
Parse XML Physical Path to Class
Get XML from Physical Path and Parse into Class
-
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.