dotConnect for SugarCRM History

This page lists the functionality added in each version of dotConnect for SugarCRM. To view the full changelog including bug fixes, consult the dotConnect for SugarCRM revision history.


New features in dotConnect for SugarCRM 1.9

The current build is 2.1.10 from 17-Jan-2024

  • The behavior is changed: turning off the "Save connection to" option in Model Settings of EF Core Model wipes out connection string literal from the generated code
  • Visual Studio 2019 version 16.11 Preview 2.0 is supported
  • The SendCallStack property is added to the Devart.Common.DbMonitor class for possibility to turn off resource-demanding logging of CallStack
  • The Filter property is added to the Devart.Common.DbMonitor class for possibility to choose events being logged
  • The Devart.Common.DbMonitor class is improved: now values of the DateTime parameters sent to the dbMonitor tool are supplemented with milliseconds
  • The new command line option /disablegac that disables adding assemblies to GAC is added

Entity Developer

  • Command-line interface is implemented in a standalone Entity Developer
  • The new property Context Name is added to Model Properties in EF Core Model
  • The new property Target Framework is added to Model Properties in EF Core Model
  • The new property Collection Property Type is added to EF template "DbContext" and EF Core template "EF Core" to determine .NET type used as a property type for the Many end of associations
  • The new property Collection Initialization Type is added to EF template "DbContext" and EF Core template "EF Core" to determine .NET type used for initialization of the Many end of association; if it is set to None, then no initialization is generated
  • The new property "Nullable Reference Types" is added to C# templates of EF, EF Core models to specify whether C# 8 nullable reference types and non-nullable reference types must be generated
  • The new partial method is added to the OnModelCreating(DbModelBuilder modelBuilder) method generated by DbContext template of EF model
  • The DbProviderFactories registration is implemented in Create Model Wizard for EF6 models and .NET Framework provider assemblies
  • The new property Target Framework is added to Create Model Wizard and Model Settings of EF6 models
  • The new options "Private setter for store generated properties" and "Constructor parameter" are added to Model Settings in EF Core for controlling visibility of setter for store generated properties
  • The new options "Don't show this message again" in the prompt window and "Prompt before generating code when there are model validation warnings" in the menu Options are implemented in a standalone Entity Developer to provide the ability not to stop code generation by warnings
  • The new extended property Do Not Generate Default Constructor is added to EF Core Model for model, classes, and complex types
  • The new extended property Do Not Generate Mapping is added to EF Core Model for class properties
  • The new property Validation Framework is implemented in the Data Transfer Object template for generating DataAnnotations attributes
  • The new option "Save connection to" is implemented in Model Settings of EF Core Model to provide the ability to store the connection string in "Model file", "Entity Developer storage", "Environment variable"
  • The new option "Enum Output" is added to the EF Core template to specify output for the generated enums
  • The new property Generate UnitOfWork Repository Properties (by default, True) is implemented in the Repository and Unit Of Work template of EF Core Model for accessing the collections of entities
  • The representation of one-to-one association with non-nullable properties on both ends is changed from 1 -> 1 to 0..1 -> 1 on a diagram in EF Core Model
  • The JSON (Newtonsoft.Json, Microsoft.Text.Json) and YAML (YamlDotNet) serializations are supported in EF Core (via EF Core template) and EF6 (via DbContext template)
  • The new template property Serialization Library is added for specifying the library used for serialization
  • The new template property Serialize Original Column Names is added for controlling the appearance of original column names in serialization
  • The new template property Serialize Navigation Properties is added for controlling the appearance of navigation properties in serialization
  • The new template property Serialize Null Value is added for managing the behavior of nullable properties
  • The new extended property Do Not Serialize is added for properties and navigation properties to exclude them from serialization
  • The new extended property Serialization Name is added for properties and navigation properties to set custom names in serialization
  • The Data Transfer Object template is improved:
    • The new template property Serialization Library is added for specifying library used for serialization, possible values are Data Contract, JSON (Newtonsoft.Json), JSON (Microsoft.Text.Json), YamlDotNet
    • The new extended property Do Not Serialize is added for properties and navigation properties to exclude them from serialization
    • The new extended property Serialization Name is added for properties and navigation properties to set custom names in serialization
    • The behavior is changed: WCF Data Contract Attributes is set to False by default now
    • The following properties are marked as obsolete:
      • the Generate Data Contracts property of the EF Core template
      • the Do Not Generate Data Contract Attribute extended property of navigation properties in EF Core Model
      • the WCF Data Contract Attributes property of the DbContext and Data Transfer Object templates
      • the WCF DataMember Attribute on Navigation Properties property of the DbContext and Data Transfer Object templates
    • The behavior is changed: the definition of auto-implemented property is put now on the single line with:
      • C# DbContext template of Devart Entity Model when ImplementINotifyPropertyChanging=False and ImplementINotifyPropertyChanged=False and PropertyChangePartialMethods=False
      • C# EF Core template of Devart EF Core Model when PropertyChangeNotifiers=False and PropertyChangePartialMethods=False
    • The EF Core model deserialization is improved: Entity Developer shows the full list of detected errors and tries to load the model with invalid elements or ignores such elements if their deserialization is not possible
    • The behavior is changed: the names of system types are generated without "System." prefix now in EF Core models; for example, it is DateTime instead of System.DateTime
    • The behavior is changed: now the EF Core template generates an additional partial class for the context class when "File Per Class" and "Generate Partial Class" are set to True
    • The provider registration is improved: requirement to put provider registration entry in the config file is not obligatory anymore
    • Create Model Wizard is improved: now it allows installing multiple NuGet packages on the final step
    • Model file tree in .NET Core / .NET Standard projects is improved: all generated code files and model files are nested under the same node in Solution Explorer
    • The behavior is changed: read-only mapping is generated for all columns with UPDATE and without INSERT permissions in data source
    • The error message in console Entity Developer is improved: now the text includes the list of all available templates if the specified name of template was incorrect
    • The Model Refactoring functionality is supported for classes in EF Core Model
    • The new attribute DisplayName is implemented for model objects' extended properties which are available via template properties
    • The new options --ContextNamespace and --DefaultNamespace are added to the Create-Model command of Console Entity Developer
    • The new extended model property Base Context Type is added for specifying a parent class for the generated context in EF Core Model
    • The new extended properties Base Type for complex types and Base Complex Type for model are implemented in EF Core Model
    • The %type name% keyword is supported in the Base Type extended property of entities and complex types, and in Base Complex Type, Base Entity Type, Base Context Type extended model properties for setting generic base type in EF Core Model
    • The new hotkey Alt+E is implemented in Property Editor for opening Column Editor in EF Core Model
    • Display names of extended properties in EF Core Model are updated: Entity Base is renamed to Base Type in class properties, Entity Base is renamed to Base Entity Type in model properties, Context Base is renamed to Base Context Type in model properties
    • The behavior is changed in a standalone Entity Developer: by default the Target Framework model property in EF Core Model is set to .NET 5 instead of .NET Framework
    • The behavior is changed in Entity Developer embedded into Visual Studio: lower versions in the EF Core version property of Model Settings are not hidden any more
    • C# code generation is improved: the using directives are generated instead of full namespaces in the names of attributes for DataAnnotations, NHibernate Validator, and Enterprise Library validation frameworks
    • Code generation is improved: OnModelCreating(modelBuilder) of the base class is invoked now if the Base Context Type property of EF Core Model is initialized
    • The new extended property Use Generic DbContextOptions Constructor Argument is added to model properties of EF Core Model
    • The new extended property Do Not Generate Constructor With DbContextOptions Argument is added to model properties of EF Core Model
    • The model validation is improved: the errors are generated for all entities with QueryType=True in EF Core Model when EF Core version=EF Core 1 in Model Settings

    Entity Framework

    • Entity Framework 6.4 is supported
    • Entity Framework 6.4.4 is supported
    • Entity Framework Core 3.1 is supported
    • Entity Framework Core 3.1.1 is supported
    • Entity Framework Core 3.1.3 is supported
    • Entity Framework Core 3.1.8 is supported
    • Entity Framework Core 3.1.9 is supported
    • Entity Framework Core 3.1.10 is supported
    • Entity Framework Core 3.1.11 is supported
    • Entity Framework Core 3.1.12 is supported
    • Entity Framework Core 3.1.13 is supported
    • Entity Framework Core 3.1.15 is supported
    • Entity Framework Core 3.1.16 is supported
    • Entity Framework Core 3.1.17 is supported
    • Entity Framework Core 3.1.19 is supported
    • Entity Framework Core 3.1.20 is supported
    • Entity Framework Core 3.1.21 is supported
    • Entity Framework Core 3.1.22 is supported
    • Entity Framework Core 3.1.25 is supported
    • The EF6 provider registration used with .NET Framework compliant assemblies is improved: the [DbConfigurationType(typeof(SugarEntityProviderServicesConfiguration))] attribute set for DbContext descendant allows now calling the DbContext constructor, that accepts a connection string, with no need to register a custom IDbConnectionFactory implementation
    • The new \Entity\EFCore3\Devart.Data.Sugar.Entity.EFCore.dll assembly compiled with EF Core 3.1 and .NET Framework 4.6.1 is added
    • The translation of the DateTime.AddMinutes() method in LINQ query into SQL statement in EF Core is supported

    New features in dotConnect for SugarCRM 1.8

    • Visual Studio 2019 is supported
    • Deprecated design-time Synchronous API calls are no longer used with Visual Studio 2019 and Visual Studio 2017
    • The integration with Visual Studio 2019 is improved: now the installation detects both 2019 Release and 2019 Preview versions

    Entity Developer

    • The ability to disable generation of the byte order mark (BOM) in the beginning of code files in a standalone Entity Developer is implemented
    • The "Optimize rendering for screens with different pixel densities" feature of Visual Studio 2019 is supported
    • The Self-Contained Entity Configuration property is added to VB.NET version of EF Core template
    • The Entities Configuration Output property is added to VB.NET version of EF Core template
    • The code generation for the class properties with Alternate Key=True by VB.NET version of EF Core template is supported in EF Core model
    • The behaviour is changed: a plural form of names ending with "s" now has a longer version (for example, status -> statuses)

    Entity Framework

    • Entity Framework Core 2.2.4 is supported
    • Entity Framework Core 2.2.6 is supported

    New features in dotConnect for SugarCRM 1.7

    • Visual Studio 2019 Release Candidate 4 is supported

    Entity Developer

    • Entity Framework Core 2.1 is supported
      • Query type support is added: classes now have the Query Type property, and if it is set to true, this class is generated as a query type
      • Lazy loading for Entity Framework Core 2.1 is supported:
        • Model now has the Use Lazy-Loading Proxies property, which enables lazy loading on the model level
        • Navigation properties now have the Lazy property, which enables lazy loading for a specific navigation property
      • Properties now have the Constructor Parameter property, for configuring a parameterized constructor of the class
      • An additional constructor that accepts DbContextOptions as an argument is added to the DbContext class descendant in the VB.NET version of the DbContext template for EF Core.
    • The "Include Environment Variables" property, determining whether context configuration will be extended with environment variables when a connection string from the appsettings.json file is used, is added to the EF Core template
    • The "Json File Base Path" property, specifying the base path for file-based providers when a connection string from the appsettings.json file is used, is added to the EF Core template
    • Using an extended property of type OutputInfo is supported
    • Code generated for nullable properties is simplified: now T? is generated instead of System.Nullable<T>
    • The new Generate GeneratedCode Attributes option (by default, False) is added to the DbContext template in EF4/EF5/EF6 and the EF Core template
    • The new Generate Dummy Comments option (by default, False) is added to the DbContext template in EF4/EF5/EF6
    • The multiple select functionality in EF Core Model is improved: now it allows setting PrimaryKey, ValueGenerated, Concurrency for several properties simultaneously

    Entity Framework

    • Entity Framework Core 2.1.1 is supported
    • Entity Framework Core 2.1.2 is supported
    • Entity Framework Core 2.1.3 is supported
    • Entity Framework Core 2.1.4 is supported
    • Entity Framework Core 2.2.1 is supported
    • Entity Framework Core 2.2.3 is supported
    • The behavior is changed: the default value of config.QueryOptions.UseCSharpNullComparisonBehavior is true now in EF Core

    New features in dotConnect for SugarCRM 1.6

    • Visual Studio 2017 is supported
    • The Readonly connection string parameter is added to allow only reading source data (only SELECT statements)
    • The behaviour is changed: now SugarLoader uses Bulk API

    Entity Developer

    • Entity Framework Core 2.0 is supported
    • The new Raw SQL Query class property and SQL method property with the corresponding editors are implemented in Entity Framework Core
    • The Snake case in both Model and Database naming rules is supported via the new "Add underscore" option
    • The new "Detect function-based column default value" option is implemented in Model Settings of EF Core model
    • The code generation for async method calls is added to the EF Core template
    • The usage of long identifiers (up to 140 symbols) for naming model objects is supported
    • The ModelNameAsFilesPrefix property is implemented in the RepositoryAndUnitOfWork template
    • The code generation for async method calls in the EF Core template is improved
    • Support for ASP.NET Core MVC is added to the MVC Controller template
    • Support for ASP.NET Core MVC is added to the Data Annotations Metadata template
    • The new SQL Type, Size, Precision, Scale options are added to the Parameters tab in Method Editor of EF Core Model
    • The new Controller Area extended class property is added to EF Core Model
    • The check of conditions for setting optionsBuilder.Use... in the generated OnConfiguring method by the EF Core template is improved
    • The process of synchronizing methods and parameters with database stored procedures in EF Core Model is improved
    • The behaviour is changed: IsRequired(false / true) for navigation properties is always generated in EF Core fluent mapping now

    Entity Framework

    • Entity Framework Core 1.1.2 is supported
    • Entity Framework Core 1.1.2 is supported
    • Entity Framework Core 1.1.3 is supported
    • Entity Framework Core 1.1.4 is supported
    • Entity Framework Core 1.1.5 is supported
    • Entity Framework Core 2.0 is supported
    • Entity Framework Core 2.0.1 is supported
    • Entity Framework Core 2.0.2 is supported
    • Entity Framework Core 2.0.3 is supported
    • Entity Framework 6.2 is supported

    New features in dotConnect for SugarCRM 1.5

    • Visual Studio 2017 Release Candidate 4 is supported
    • The Run Once Command connection string parameter, which specifies a command to execute when the connection is opened the first time and not executed when the connection is taken from the pool, is added
    • The new LoadTable overloads for loading data from a IDataReader, array of rows, or only rows with a specific RowState from a DataTable are added to the SugarLoader class
    • The 'Do not install assemblies in the GAC' check box that allows disabling placing the provider assemblies to the GAC is added to the Install Wizard

    Entity Developer

    • Entity Framework Core 1.0 RTM is supported
    • The possibility to set values of stored procedure parameters for getting metadata to generate automatically the corresponding complex type is implemented
    • The DbProviderFactory provider registration in application's *.config is supported by the Entity Developer version integrated into Visual Studio
    • The generation of static methods by the EntityObject template is supported via the new property Direct Call of EntityMethod
    • The possibility to choose whether to add new entities to a diagram or not in Update From Database Wizard is implemented
    • The behaviour is changed: now the DbContext template generates an additional partial class for the context class when "File Per Class" and "Generate Partial Class" are set to True
    • The behaviour is changed: the ObservableCollection navigation properties are initialized now in a default class constructor

    Entity Framework

    • Entity Framework Core 1.1.0 is supported
    • The Scaffold-DbContext NuGet command of Package Manager Console for generating a model basing on the existing database schema is supported in EF Core
    • Entity Framework-related assemblies are renamed
    • Upgrade Wizard is improved for upgrading projects with the Entity Framework functionality

    24-Dec-15 First Release of dotConnect for SugarCRM 1.0