ASP.NET Maker 2020 is a huge upgrade from v2019, it includes a long list of new features. However, if you upgrade from version prior to v2019, please be reminded that v2019 introduced some new features which are not fully compatible with old versions, make sure you read the follows first. When you open an old project in v2020, ASP.NET Maker will try to convert the changes for you. However, the conversion cannot be 100% and you'll need to do some updates yourself. Please read the following carefully, review your code, update and test it before deploying the new scripts to your production server.
ASP.NET Core 3.1
Require ASP.NET Core 3.1.0 or newer. All previous versions are not supported.
Always use netcoreapp3.1.
If you still use Microsoft Access, you need to change to ODBC. (.NET Core app does not support OLE DB.)
Replace System.Net.Mail by MailKit
The System.Net.Mail namespace is replaced by the MailKit to support sending email via SMTP/SSL. If you have server event codes that uses System.Net.Mail to send email, you need to change your codes to MailKit. Refer MailKit for coding examples.
Since v2018, the EW_ and ew_ prefixes in code are removed, e.g. EW_PROJECT_NAME becomes PROJECT_NAME and ew_ExecuteScalar() becomes ExecuteScalar(). Also, the c prefix for class names are also removed, e.g. cListActions becomes ListActions.
No more Page_* methods (EXCEPT for server events) e.g. Page_Run() becomes Run().
Method name are changed to the more common camel case, e.g. ew_Ajax() becomes ew.ajax(). If your client side code calls any ASP.NET Maker functions, you must update them, see examples under Lookup Table.
Bootstrap 4 and AdminLTE 3
AdminLTE 3 supports some layout options (top navigation, boxed, fixed, fixed navbar, fixed footer). ASP.NET Maker template is based on the fixed layout, if you want to use other layout options, you can change the advanced setting Layout Class and then implement your own adjustments, if necessary. Note that setting the layout class to layout-top-nav alone does not mean horizontal menu, only menu items selected as navbar item in the Menu Editor will be shown. If you want horizontal menu, you can set all menu items as navbar items by right-clicking the column header and choose Select all.
Make sure you re-generate all .css files, you can NOT re-use old .css files from previous versions. If you use your own external stylesheet, you MUST update it first.
There is no more icons in Bootstrap 4. Now Font Awesome 5 Free included in AdminLTE 3 is used. Update your icon class names in Menu Editor and server/client events, if used. Read Upgrading from Version 4 first. If you want to upgrade quickly, you can enable the advanced setting Use Font Awesome v4 shims which allow you to keep your old version 4 icon names, aliases, and syntax while mapping version 5 icons to your current references. However, make sure you should do a proper upgrade to v5 as soon as possible, the shims will be removed in future version.
HTML Element IDs and CSS Class Names
Since v2019, ASP.NET Maker scripts support caching the lookup table (if reasonably small) and it is enabled by default. The caching is done on server side so the page may be loaded slightly slower if you have many lookup fields in the table. You may however disable and fine tune this feature by the two new advanced settings, Use lookup cache and Lookup cache count (see Advanced Settings).
As always there are many new phrases in new major version, make sure you update your non-English language files, otherwise some phrases will be missing in Multi-Language projects.
Integrating ASP.NET Report Maker Project
ASP.NET Maker 2020 integrates most features from ASP.NET Report Maker and can import reports from ASP.NET Report Maker project, our objective is to enable users to migrate reports to ASP.NET Maker and work on one single project from now on. That said, ASP.NET Maker 2020 uses open source MIT licensed Chart.js which does not support all chart types previously supported by ASP.NET Report Maker. If you have reports with unsupported charts, you need to either remove them or do some integration yourself, read Integrating ASP.NET Report Maker Project for details.
Control File, Template Tags and Extensions
The template engine has been greatly simplified, now it is much easier to make extensions than before. However, this also means the syntax has been changed. If you customize template or make extensions, read Control File, Template Tags, and Extensions first and then update your customizations.
Since v2019, the horizontal Menu extension (for registered users) had retired. However, there is a new option Navbar Item for menu items which allow you to put some (or all) menu items at the top navbar, see Menu Editor. You can show all menu items in the navbar on the top of the page, just right click the header of the Navbar Item column in Menu Editor and click Select All. In such case, the vertical menu will be hidden automatically. For mobile mode, the vertical menu is always used as mobile menu.