-
-
Notifications
You must be signed in to change notification settings - Fork 107
v2 Project Information
SmartFormat is written purely in C# and uses the .NET 3.5 Framework.
SmartFormat takes advantage of several features of .NET 3.5:
- Extension methods (in the file
SmartExtensions.cs
) - LINQ extension methods are used in several places (example:
.FirstOrDefault()
) - Automatically implemented properties (example:
public string Format { get; private set; }
) - Implicitly typed local variables (using
var
keyword)
The majority of these features simply provide a cleaner syntax than .NET 2.0.
If you are familiar with both C# 2.0 and C# 3.5, it should be pretty trivial to convert this project to pure C# 2.0. The extension methods can be removed, the LINQ methods used are very simple to reproduce, and auto-implemented properties and implicitly-typed variables can easily be refactored.
Alternatively, the original version of this project was created in VB.NET with the .NET 2.0 framework. Please see "Project History" below for details and download links.
The SmartFormat project originally started as CustomFormat and was written in VB.NET with the .NET 2.0 framework. It is still available on CodeProject: CustomFormat.
Scott Rippey
Created the original CustomFormat project, and redesigned it as SmartFormat in C#.
Quentin Starin
Ported CustomFormat from VB.NET to C#, and designed the initial C# project structure.
Jesse Plamondon-Willard
Contributed many useful ideas to help guide the path of new features. Also helped with library documentation and Wiki documentation.
- Syntax, Terminology
- Placeholders and Nesting
- string.Format Compatibility
- Character Literals in Format Strings
- HTML With CSS or JavaScript
- Data Source Extensions
- Default _ DefaultFormatter
- Lists _ ListFormatter
- Choose _ ChooseFormatter
- Condition _ ConditionalFormatter
- Null _ NullFormatter
- SubString _ SubStringFormatter
- RegEx _ IsMatchFormatter
- Pluralization _ PluralLocalizationFormatter
- Localization _ LocalizationFormatter
- Templates _ TemplateFormatter
- TimeSpan _ TimeFormatter
- XML _ XElementFormatter
- Extension Methods
- Home
- Common Pitfalls
- HTML with CSS or JavaScript
- Overview
- Main Features
- Formatters
- Extra Features
- Console and StringBuilder
- TemplateFormatter
- SmartSettings to control Smart.Format behavior
- Additional Info
- License