It’s very exited for us to release these versions since they have many new features wanted before. Let’s begin to investigate…
ASP.NET Boilerplate v0.8
You can see all resolved issues on the Github milestone and see release notes on the Github release.
What’s New?
Moved to .NET 4.6.1
We moved to latest .NET framework to prepare ASP.NET Core integration. So, existing applications should be upgraded in order to get ABP v0.8 release.
Notification System
This was a feature we always wanted to implement, and finally here: Real time push notifications! As a brief, it allows users to subscribe notification types. Then we publish a notification and it’s sent to all subscribed users. We can also target to specific user(s).
Real time API is designed as abstract and implemented by SignalR. Notification publisher also uses background jobs to distribute notifications. Thus, it does not block you.
See notification system document for more.
SignalR Integration
A new package, Abp.Web.SignalR has been published. It simplifies SignalR integration for your application and implements two abstract concept:
- Notification system, used to send real time push notifications to users.
- Online Clients (IOnlineClientManager), used to get information on online users! Yes, you can check if a user is currently online (IOnlineClientManager can be used in any layer of your code) or can get a list of all online users.
See SignalR integration document for more.
Abp.Owin Package
Abp.Owin package is published for OWIN integration. It currently does not much, but solves a problem (see issue #849) in debugging. Add this package to your .Web project and call UseAbp() method in your Startup file as shown below:
[assembly: OwinStartup(typeof(Startup))] public class Startup { public void Configuration(IAppBuilder app) { app.UseAbp(); //other configuration... } }
Background Jobs and Workers
This is also was a most wanted feature. Now, we can add our jobs to queue and they are exdecuted in background (in a seperated thread). We can use this for sending emails, for example. ABP includes a simple built-in background job manager which executes jobs as FIFO with a retry mechanism. It can be easily replaced by HangFire.
See background jobs and workers document for more.
HangFire Integration
Abp.HangFire package is published for HangFire integration. You can use it as background job manager. You can also get all power of HangFire.
See HangFire integration document for more.
Breaking Changes
There are a few breaking changes in v0.8:
* Upgraded to .NET Framework 4.6.1 (download here). Current applications should also upgrade. Just change target framework for your projects.
After upgrade, you may get an exception related to System.Runtime in your deployment environment. This is not related to ABP, but you may fix it by adding System.Runtime to assemblies in your web.config as shown below:
<compilation debug="true" targetFramework="4.6.1"> <assemblies> <add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> </assemblies> </compilation>
You can check this link if you want to know more information on this problem.
* Replaced Microsoft.Bcl.Immutable package dependency with System.Collections.Immutable, since it was deprecated by Microsoft. After upgrade, you should carefully uninstall old Microsoft.Bcl.Immutable package from all of the projects in your solution.
* If you are using OWIN, then you should add Abp.Owin to your application as described above.
Road Map to v1.0
- v0.8.x: Probably, there will be minor releases until v0.9. Also, we will document and create samples for SwaggerUI and RedisCache integration and Typescript proxy generation.
- v0.9: Integrate to ASP.NET Core v1.0 (probably with ASP.NET Core RC, since there is no clear release date yet). Also, there are some waiting issues in Github v0.9 milestone.
- v1.0: API stabilizations, improvements, documentations and waiting issues in v1.0 milestone.
We can not say exact release dates. Integrating to ASP.NET Core is the risk point for us. We don’t know what type of problems we will have. If everything goes well, we planned to finish it until May 2016.
ASP.NET Zero v1.8
As you probably know, ASP.NET Zero is a commerical product built on ABP framework. It’s a good startup point for your next projects. It provides a modern user interface and application layer by extending module-zero.
What’s New?
Notification System
As ABP framework introduced a new notification system, we implemented UI and application layers it in ASP.NET Zero. Some screenshots:
Notification area (in the header) – shows latest notifications and updated real time:
Notification settings:
Notification List – Shows all notifications:
Currently, there are two pre-defined notifications those are sent when a new user is registered to the system. First, a welcome notification is sent to the new user. Second, a notification sent to subscribed users (generally the admin) to inform that a new user is registered.
To test it; Create a demo, login as admin and check “On a new user registered to the application” on notification settings. Then open a second browser. Register a new user in the second browser. You will see real time notification in the admin side.
Account Linking
A user can have more than one account in different tenants (or even in same tenant or in the host). If he want to switch to 2nd account, he had need to logout from 1st account and then enter credentials to login to 2nd account. Now, he can link all his accounts and then switch between accounts with a single click. Added a new sub menu to the user menu:
“Manage accounts” opens a dialog to see all linked accounts and add/remove accounts.
OData, SignalR and HangFire integrations
Integrated OData, SignalR and HangFire to the startup template. So, you can immediately use all these out of the box.
Others
Also, upgraded to ABP v0.8 and Metronic v4.5.4, made some minor enhancements ang bug fixes.
Road Map
Our current priorities are;
- ASP.NET Core version. This will wait ABP’s ASP.NET Core Integration (ABP v0.9 – mentioned above).
- Angular 2.0 SPA version. This will be developed concurrently with ASP.NET Core version.
- Other features on the roap map documentation.
Some Statistics
ABP community is growing. We have 1,115+ stars on main repository, 92,000+ downloads on Nuget (just for the core package), ~900 visitors daily (to aspnetboilerplate.com), ~3,000 forum posts… Thank you all
About the Team and Contributors
Introducing İsmail Çagdaş (@ismcagdas), who is my co-partner, will be the second developer dedicated to ASP.NET Boilerplate and ASP.NET Zero projects.
I also want to thank to all contributors to ABP project. They made significiant contribution by issues, feedbacks, forum supports and pull requests.
Links
- ASP.NET Boilerplate: aspnetboilerplate.com
- ASP.NET Zero: aspnetzero.com
- Forum: forum.aspnetboilerplate.com
Congrats for the success !
A lot of new cool features in this release.
Always a pleasure to work with ABP
Thank you so much
Congratulation!
Your hard work has result in your success.
I love new cool features in this releases
Best wishes for the future of ABP…
Thanks a lot İbrahim
Thanks for all the hard work! Very exciting!
Thank you too Ron.
Bu başarılı çalışmandan dolayı tebrik ediyorum. Başarılarının devamını diliyorum..
Teşekkürler
Wow ! Excellent ! Great Job !
We’re awaiting for a Code project article about the SignalR + ABP integration
Thanks
I hope we will prepare more docs and articles.
Wow! Great Job @HIKALKAN!
I used to work with HangFire and it’s great to see the integration with Abp.
Thanks for your hard work!
Thanks a lot. Hangfire is really a good tool.
Hi,
what about Abp.MongoDB? Is there a roadmap about this?
Thanks and congrats for the great work.
Hmm… actually, it works as I tested. But since I’m not too experienced on MongoDB, I’m not sure it’s correctly implemented and working. If you like, you can test it: https://github.com/aspnetboilerplate/aspnetboilerplate/tree/master/src/Abp.MongoDB just build it and have a local reference.
Good job, Congratulation!
Thanks
Hi Halil,
You have written a great architecture. I’m using it. Would you please let me know one thing? I went through your article on codeproject but I’m facing one problem while creating multitenant application. Obviously I’m not using angular there and the article I went through was with client side in angular.js. so I need to know How are you handling views? specifically the architecture of @L(“anykeyword”) . I have seen that every class or any attribute is being referred using it.. could you please brief me how are you handling it so that I can easily develop 3 database oriented pages for my site today. if you can share a link
Hi,
Thanks a lot.
I believe that you can understand it easily when you read this: http://www.aspnetboilerplate.com/Pages/Documents/Localization#DocInServer. L(“…”) is just another method which internally uses ILocalizationManager to translate texts.
Hi,hikalkan!You really did a good job!As a .net developer,I just wanna say ‘Thank you’ and hope you could add some cooler features in more advanced techniques.Take care of yourself!
Thanks a lot
you had mentioned v0.9 around May 2016 with aps.net core. Are you any close to this? i am most interested in multi Tenant boilerplate with .net core
Hi,
We planned like that, but then it’s changed since ASP.NET Core RC2 is delayed much. So, we worked for other features described here: http://volosoft.com/aspnet-boilerplate-v0-9-and-aspnet-zero-v1-10-have-been-released/
But note that we don’t think to support .NET Core at first, we will support ASP.NET Core (Full .NET Framework).
I am kinda confused where you say you will support asp.net core and not .net core until later. isn’t asp/net core built on top of .net core?
AspNet Core can work on .Net Core or Full .Net Framework. We can not support .Net Core since some of APIs we are using are not supported yet.
I am just starting to read up on .net core and asp.net core, could you please help me with what type of features that .net core does not support yet, that will give me an idea of what should i do with my new project. Whether to choose full .net framework or not.
Hi,
I’m reading for months and even I can not say an exact list
Please read more, I can not write them here. I will consider to move to .NET Core after it’s full released.
my guess is that full framework does not provide this speed?
http://web.ageofascent.com/asp-net-core-exeeds-1-15-million-requests-12-6-gbps/
and does full framework with asp.net core work same like it’s a console app and can be run on a process or IIS?
I haven’t tested it.
Yes, it is same.
is there a proven way to only use modules only related to Multi tenancy and use Dapper ORM instead of EF
Hi,
ABP has no integration with Dapper. You can implement it but I don’t know if Dapper ORM supports automatic data filters (which is used in multitenancy).
Good job sir , I like to work on boilerplate asp.net ,And I am started my work its simple website ,its new and very very innovative ,I like and its future boom ,thanks
Thanks
Good day,
Congratulations on the excellent work done.
Maybe there is a graph where you can see the relationships between each of the projects or dependencies?
Thanks for such a cool framework , a much awaited on rather. I’m have come across ABP just recently and was exploring to use it for our project development. I was having a doubt whether Asp.net zero( commercial framework?) and module zero ( commercial template?) is same thing? Are these commercial counterpart of ABP? I was looking for a open source framework with a Authentication/Authorisation/MultiTenat/Localised and with a intranet template.
Thank you
AspNet Zero is an enterprise level startup solution (base application) built on ABP and module zero. There is a free template based on ABP and module zero but it’s very simple compared to AspNet Zero: https://aspnetzero.com/Documents/Abp-Template-vs-AspNet-Zero