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.