Notes on updating from Next Design V3.0 to V3.1
project file
THERE IS NO CHANGE IN FILE SAVING FORMAT WITH THE UPDATE FROM V3.0 TO V3.1. FILES SAVED IN V3.1 CAN STILL BE EDITED IN V3.0.
Extended content
The following extension contents must be updated; please update them via Manage Extensions in Next Design.
- Package UmlSysml
- TimingChart Package
Extensions
The platform of Next Design itself will be changed from .NET Core 3.1 to .NET 6. NET Core 3.1 to .NET 6. If you wish to continue to use extensions developed for V3.0 with V3.1, please take the following actions.
- MIGRATION OF EXTENSIONS TO .NET 6
- CHECKING APIS WHOSE BEHAVIOR CHANGES DEPENDING ON THE PROCESSING SYSTEM
- TROUBLESHOOTING DURING .NET6 MIGRATION
NET 5 and .NET 6 have some disruptive changes that must be addressed individually.
NET 5 and .NET 6. Users should also check the compatibility of any external dependency packages they are using.
NET Core 3.1 is no longer supported. NET 6 for future support.
(NET Core 3.1 and .NET 6, so most extensions will work without modification.)
MIGRATION OF EXTENSIONS TO .NET 6
Visual Studio 2022 is required to develop .NET 6-compatible extensions in Visual Studio.
(Visual Studio 2019 does not support targeting .NET 6.0 or later)
TO MIGRATE EXTENSIONS DEVELOPED FOR V3.0 TO .NET 6, FOLLOW THESE STEPS
-
NET 6.0 SDK (both x64 and x86 for Windows). ( Download here )
-
If you get the following warning, change the Sdk setting in the project file (project name.csproj) to [Microsoft.NET.
Warning message:
You no longer need to use the Microsoft.NET.Sdk.WindowsDesktop SDK. Please consider changing the SDK attribute of the root project element to 'Microsoft.NET.Sdk.
Target file: project name.csproj
Since it cannot be changed from the property settings of Visual Studio 2022, click on the target file in Visual Studio to open it, or open it in a text editor to edit it.
Example of project setup before modification:
<!--csprojの設定--> <Project Sdk="Microsoft.NET.Sdk.WindowsDesktop"> </Project>
Example of a modified project setup:
<!--csprojの設定--> <Project Sdk="Microsoft.NET.Sdk"> </Project>
-
Open the solution in Visual Studio 2022.
-
Right-click on the project in the Solution Explorer and run "Properties" to view the project's properties.
-
SELECT APPLICATIONS > GENERAL FROM THE LEFT NAVIGATION AND CHANGE THE TARGET FRAMEWORK SETTING TO .NET 6.0.
-
In the Solution Explorer, right-click on the project and run "Manage NuGet Packages" to display the "NuGet Package Manager".
-
[Select the "Installed" tab and update the following packages to the latest stable version after the supported version
Target Package Supported Versions NextDesign.Desktop 3.1.1.30609 or later NextDesign.Core 3.1.1.30609 or later NextDesign.Desktop.ExtensionPoints 1.1.1.30519 or later -
NET 6.0 COMPLIANT PACKAGES.
-
Rebuild the project.
-
Fix any build failures due to package updates, etc.
-
Check the operation of the extension.
NET 5 AND .NET 6 DESTRUCTIVE CHANGES MAY BE AFFECTING YOUR BUILDS IF THEY FAIL. PLEASE ALSO REFER TO THE FOLLOWING PAGES FOR FURTHER ACTION.
NOTE THAT EXTENSIONS BUILT USING THE ABOVE PROCEDURE WILL NOT WORK WITH V3.0, BUT ONLY WITH V3.1.
CHECKING APIS WHOSE BEHAVIOR CHANGES DEPENDING ON THE PROCESSING SYSTEM
Due to the change in processing system (.NETCore3.1 => .NET6), the behavior of the API to retrieve the selected model will change.
-
V3.0 (.NETCore3.1):
If multiple models are selected, in many cases the models are stored in the order of selection.
-
V3.1 (.NET6):
When multiple models are selected, the order of the stored models will no longer be regular.
(There will no longer be a dependency on the order of selection.)
This will affect extensions that are implemented in a way that is aware of the order of the acquired models. Please check to see if you are affected by this change, and if so, you will need to review your implementation.
THE AFFECTED APIS ARE
Namespace: NextDesign.Core
- IDiagram.GetSelectedShapes
- ISequenceDiagram.GetSelectedShapes
- IEditor.GetSelectedElements
- ITreeGrid.GetSelectedNodes
- IGrid.GetSelectedRows
- IForm.GetSelectedControls
- IProduct.SelectedFeatures
Namespace: NextDesign.Desktop
- INavigator.SelectedItems
- ITracePage.SelectedNodes
- IEditorView.SelectedModels
TROUBLESHOOTING DURING .NET6 MIGRATION
NET6 migration, the following is a list of problems encountered by the Next Design development team and how they were resolved.