MDriven v7.0.x - September 2025
Released: Oct 15, 2025
v7.0.x - September 2025 での更新項目
機能
Designer
- Continuous Integration/Scripted Deployment Support:
- Added functionality to the MDrivenServer and MDrivenFramework to enable automated and scripted model deployment. A special TWOFACTOR code can now bypass the standard Two-Factor authentication for model uploads, facilitating Continuous Integration (CI) workflows.
- LiveEdit Improvements (Web & WPF):
- Significant work was done to mitigate blinking during LiveEdit, aiming for a much smoother, less distracting experience (across multiple revisions).
- Introduced a BlazorEdit option that uses a different rendering model to retain variables and avoid full page refreshes, resulting in smoother editing in Blazor environments.
- PlacingContainer (PC) Conversion Tools:
- Added a new transition tool in the Designer to help convert existing Grid layouts to the newer PlacingContainer structure.
- Improvements to the PC conversion helper and better visualization/display of PC structure within the WPF ViewModel Editor.
- NuGet and .NET Updates:
- Updated the framework to support .NET 8 on plugins.
- Update of dependencies to .NET 8+ versions, including major updates to Microsoft.Extensions.Logging, Microsoft.AspNetCore.SignalR.Client, Microsoft.AspNetCore.Components, and authentication packages.
- Usability: Better feedback is now provided on the refresh process for NuGet downloads.
Framework
- Better Error Feedback: Improved the error message when a package is used but not included in the EcoSpace, changing the cryptic "Model not Ecofied" to a more helpful message.
- Blazor Grid Enhancements: The Blazor UI now provides a highly useful feature to display the Sum/Average/Count of selected numeric cells in data grids.
- Continuous Integration (CI) and Automation:
- The platform now supports scripted model deployment and Continuous Integration workflows.
- A special TWOFACTOR bypass code allows automated build, code generation, and model upload processes to override the two-factor authentication requirement.
- Enhanced ViewModel Creation: The ViewModel creation process now automatically filters away self-referencing (recursive) nestings to prevent hard rendering breaks.
- .NET 8 Migration:
- Core components (MDriven.ASPNETIdentity.core, MDriven.MVC.Core, MDriven.Persistence.WebApi.Core) have been upgraded to .NET 8.
- A massive update of NuGet dependencies across the entire framework to their latest .NET 8+ versions, including packages for Identity, SignalR, Components, and Authentication.
- Metric/Imperial Unit Conversion:
- A new suite of MetricImperial transforms has been added to automatically convert between various units (e.g., Gram/Ounce, Millimeter/Inch, Celsius/Fahrenheit, etc.).
- Improved UI Data Formatting:
- Automatic StringFormat is now applied to decimals in AngularJS and Blazor, defaulting to two decimals with control via SysCultureSettingsSingleton.
- StringFormat is now also applied to integers to provide thousand separators by default.
- The deprecated StringFormatRazor is being phased out in favor of StringFormat.
Turnkey
- Advanced Blazor LiveEdit:
- Introduced a BlazorEdit option with a new rendering model that aims to retain variables between design changes and avoids full page refreshes, resulting in a much smoother LiveEdit experience.
- Improvements were also made to mitigate blinking during the LiveEdit process.
- Blazor UI: Improvements to styles, including better handling of the gridrowcontent button and general Blazor style adaptions.
- Data Analysis in Grids (Blazor):
- The Blazor cell selection feature now provides immediate data analysis, displaying the Sum, Average, and Count of all selected numeric cells.
- System Pattern Clarity:
- Improved logging and error catching for incomplete SysSingleton/SysUser patterns, providing much clearer diagnostic information instead of cryptic errors.
Server
- Advanced Continuous Integration (CI) and Automation:
- The MDrivenServer now supports a special TWOFACTOR bypass code, allowing your scripts and automated systems to upload new models without manual two-factor authentication.
- This change, combined with extensions to MDrivenFramework, enables full scripted model deployment workflows (CodeGen, Build, Upload).
- New ScriptAfterEvolve Functionality:
- A significant new feature allows you to define and execute a Script After Evolve on the MDrivenServer. This is highly useful for running automated tasks or data migration routines immediately following a model evolution.
- The server code was restructured to accommodate this powerful new logic.
- Stability and Core Updates
- .NET 8 NuGet Updates:
- Core server dependencies have been massively updated to their latest .NET 8+ versions, including packages for SignalR, Components, and various Authentication providers, ensuring stability and compatibility.
不具合の修正
Designer
- OCL Fix: Corrected an issue where OCL expressions resulting in a constant (e.g., 'let x=true in (1.23)') would incorrectly return null during the main render.
- Stability Fixes:
- Fixed a deadlock issue in WPF caused by asynchronous operations during OCL PSEval-operations.
- Addressed a bug where Copy/Paste of attributes in stable diagrams did not correctly display the new value.
- Fixed a bug where preconditions were missed for methods and triggers when using the Rename and Usage functions.
Framework
- Deadlock Fixes: Several significant deadlock issues related to asynchronous operations and OCL evaluations in WPF have been identified and resolved.
- Search and Data Export Fixes: Fixed a bug that prevented the Export items to file feature from working correctly in search grids.
- Login and Identity: The IUserMDrivenManager interface was updated to ensure that UserName and Id for SysUser are consistently the same, resolving issues with login tokens and potential doubling of user accounts.
- Placeholder Fixes: Fixed issues with placeholders not displaying correctly in Blazor and AngularJS.
Turnkey
- Blazor UI:
- Fixed a bug where the InPlacePopup component was broken in Blazor.
- Fixed an issue where Column filtering did not work correctly on combo boxes.
- Data Export Fix: Fixed a bug that prevented the Export items to file function from working correctly in search grids.
- Localization & Formatting (AngularJS):
- The AngularJS numberhash filter now correctly uses the i18n language set via $translate rather than the browser's default navigator language, ensuring consistent locale-based formatting.
- Fixed issues with number-formatted strings in AngularJS not displaying placeholder text when set.
- Stability: Added a null check to periodicaction when the application is shutting down.