DotVVM is an ASP.NET framework that lets you build line-of-business applications and SPAs without writing tons of JavaScript code. You only have to write a viewmodel in C# and a view in HTML. DotVVM will do the rest for you.
DotVVM brings full MVVM experience and it uses KnockoutJS on the client side. It handles the client-server communication, validation, localization, date & time formatting on the client side, SPAs and much more.
It is open source, it supports both OWIN and ASP.NET Core and it runs on .NET Framework, .NET Core and Mono.
It also offers a free extension for Visual Studio 2015 and 2017 with IntelliSense and other useful features which make the development really easy and productive.
The Views in DotVVM use HTML syntax with controls and data-bindings.
<div class="form-control">
<dot:TextBox Text="{value: Name}" />
</div>
<div class="form-control">
<dot:TextBox Text="{value: Email}" />
</div>
<div class="button-bar">
<dot:Button Text="Submit" Click="{command: Submit()}" />
</div>
The ViewModels are plain C# objects. You can call public methods from the View.
public class ContactFormViewModel
{
public string Name { get; set; }
public string Email { get; set; }
public void Submit()
{
ContactService.Submit(Name, Email);
}
}
You just need to know C#, HTML and CSS. For most scenarios you don't have to write any JavaScript code.
- Many built-in controls
- Advanced validation rules integrated with .NET data annotation attributes
- Support for .NET cultures, number & date formats and RESX localization
- SPA (Single Page App) support
- User controls
- MVVM with testable ViewModels and IoC/DI support
- Visual Studio integration with IntelliSense
- OWIN and ASP.NET Core support
- DotVVM Dynamic Data
- Bootstrap for DotVVM - more than 40 controls that make using Bootstrap easier and your code much cleaner
- DotVVM Business Pack - Enterprise ready controls for Line of business web apps
-
Install the DotVVM for Visual Studio extension.
-
Read the documentation.