Changelog History
Page 1
-
v4.1.1 Changes
November 24, 2020🐛 Bug Fix
- 🛠 Fix Web API endpoint not responding when the client update does not yield any server response.
📦 NuGet symbol packages (.snupkg) are included to provide better debugging experience.
-
v4.1 Changes
June 30, 2020🚀 This release provides improved support for asynchronous execution within a view model and allow the use of methods to express view model commands.
🔋 Features
- ➕ Add
OnCreatedAsync
virtual method inBaseVM
to allow asynchronous view model initialization.
Example:
public class MyViewModel: BaseVM{ ... public override async Task OnCreatedAsync() { MyPropertyValue = await SomeAsyncMethod(); } }
- 👌 Support using method instead of
Action
property.
Example:
vm.$dispatch({Submit: {/\*form data\*/}}); public class MyForm : BaseVM{ // OLD:public Action\<FormData\> Submit { get =\> formData =\> SubmitForm(formData); } // NEW:public void Submit(FormData formData) =\> SubmitForm(formData); }
- 👌 Support asynchronous action methods. They are awaitable, which means you no longer need to call
PushUpdates
.
Example:
vm.$dispatch({Submit: {/\*form data\*/}}); public class MyAsyncForm : BaseVM{ public string Message { get =\> Get\<string\>(); set =\> Set(); } public async Task Submit(FormData formData) { await SubmitFormAsync(formData); Message = "Submitted"; } }
Provide [ItemKey] attribute to specify list item keys for CRUD operations (#205).
Example:// OLD:public string Employees_itemKey => nameof(EmployeeInfo.Id);public IEnumerable<EmployeeInfo> Employees { get; private set; }// NEW:[ItemKey(nameof(EmployeeInfo.Id)]public IEnumerable<EmployeeInfo> Employees { get; private set; }
🐛 Bug Fixes
- 🛠 Fix the middleware that extract headers so that the client can update the headers through dispatch (#251).
🔔 Notice
🚦 The library for ASP.NET Framework "DotNetify.SignalR.Owin" is no longer maintained, with v3.6.1 being the last published version. The source code was moved out the main repo and archived here. However, private support is possible with sponsorship.
- ➕ Add
-
v4.0 Changes
June 01, 2020💥 This release provides better Typescript support by migrating the majority of code to Typescript. Some type names have been renamed and will cause breaking changes if you're using type definitions from previous versions.
🐛 Bug fixes
-
v3.7 Changes
May 14, 2020🚀 This release provides the much-needed enhancements to the React router, i.e. support for lazy-loading through integration with Webpack code splitting, 404 error handling, and server-side rendering.
Doc: https://dotnetify.net/core/api/routing
🔋 Features
- 👌 Support lazy-loaded routes by allowing
onRouteEnter
to return a promise object and defer the routing until the promise (which should be used to dynamically import the view components) is resolved. - Include
onRouteEnter
in theconnect
's options argument. - ➕ Add
enableSsr
(client-side) anduseSsr
(server-side) APIs to support server-side rendering. - Router will now request '/404.html' when the path cannot be resolved.
- 👍 Allow the route template to accept wildcard (*) URL pattern to catch 404 errors.
🐛 Bug Fixes
- 👌 Support lazy-loaded routes by allowing
-
v3.6.2 Changes
March 15, 2020🐛 Bug Fixes
- 🛠 Fix Update_VM failing with MessagePack (#227).
-
v3.6.1 Changes
November 29, 2019 -
v3.6 Changes
November 25, 2019🔋 Features
- 👌 Support SignalR using System.Text.Json serialization (#220).
- Add hubOptions.connectionBuilder settings to support configuring MessagePack (#221).
- 👌 Support CRUD APIs passing collection of items.
🐛 Bug Fixes
- 👻 Defer registration of entry assembly until it's confirmed there's no other assembly, to avoid exception being thrown prematurely if the entry assembly contains no view model.
-
v3.5 Changes
October 01, 2019🚀 This release provides a better hub proxy class abstraction, which allows important improvements to the library: multi-hub support (for realizing micro-frontend pattern) and capacity for different hub proxy implementations (e.g. local/client-side view model, communication using web API instead of SignalR).
🔋 Features
- Add createHub API to create a new dotNetify hub client.
Add connectHandler API to intercept view model connect call to provide the opportunity to switch hub server.
Doc: https://www.dotnetify.net/core/api/connection➕ Add "local mode" connect option to support client-side view model.
Doc: https://www.dotnetify.net/core/api/localmode➕ Add "web API mode" connect option to access view model through Web API.
Doc: https://www.dotnetify.net/core/api/webapimode➕ Add
useConnect
hook.➕ Add routing support for web components.
Automatically call
AddMemoryCache()
if the service isn't registered.
🐛 Bug fixes
- #201 Fix redirect with root "/".
-
v3.4 Changes
July 11, 2019🚀 This release adds the following features:
- ➕ Add a new MulticastVM "Requested' event to notify of requests made to the view model.
- Include the responses to view model requests in the middleware/filter pipelines.
- ➕ Add support to switch hub server URL after the first connection (#192).
- ➕ Add a new method to configure
VMSerializer.SerializerSettings
(#195).
🐛 Bug fix:
- 🛠 Fix CRUD API where the client only retains the last item key received from the view model.
-
v3.3.1 Changes
November 28, 2018🚀 This release provides the following new features:
- 🚦 .Addition of .NET client to DotNetify.SignalR library to let .NET applications communicate with SignalR .NET Core hub server (#102). Note: SignalR .NET Framework is not supported.
Doc: http://dotnetify.net/core/api/dotnetclient
Demo: https://github.com/dsuryd/dotNetify/tree/master/Demo/DotNetClient- MapDotnetifyHub extension method can accept HttpConnectionDispatcherOptions configuration options (#137).
- 👉 New dotNetify configuration method UseJsonSerializerSettings to control how view model data is serialized (#105).
⚡️ Other updates:
- 🚦 .Addition of .NET client to DotNetify.SignalR library to let .NET applications communicate with SignalR .NET Core hub server (#102). Note: SignalR .NET Framework is not supported.