C#Bot Release

Release notes for version of C#Bot


No new features were included.


  • Postfix entity class names with ‘Entity’ so model names don’t conflict with internal names
  • Updated Specflow Packages to resolve namespace issues
  • Added a protected region for web drivers
  • Implemented available by to strip attributes from the client-side

Resolved Defects

  • Resolved several cases where certain associations are not working as expected or causing unexpected errors
  • CRUD Page enums were not being set
  • The Filter Enum combobox was crashing client-side
  • Form Named Forms, Form or FormEntity caused duplicate class name

Migration Path

  • All bot written entities have be renamed to have the suffix ‘Entity’ on them. This will cause all modelled entities to have new filenames. Upon rewritting your application, take the following steps:

    • Copy out any protected region changes from the client or serverside models, so they can be added back into the new files.
    • Change any protected code that affects entities to have the work Entity on the end of the class name. For example for the following code where ‘Car’ is a modelled entity:
    // Old
    var x = new Car();
    // New
    var x = new CarEntity();
  • The entity controllers for all entities have had a url change, there has been no functionality changes to these entities. To address this update any protected code calls to the controllers to the new url.

    Old: /api/MyEntity

    New: /api/entity/MyEntity

  • The discriminator for any inherited tables has been changed to have an entity suffix. This will mainly affect the built in AspNetUsers table.

    • To fix the issue in the in the AspNetUsers table run the following script. This can be placed in a migration script to fix production issues.
    UPDATE "AspNetUsers"
    SET "Discriminator" = concat("Discriminator", 'Entity')
    WHERE "Discriminator" NOT LIKE '%Entity' AND "Discriminator" != 'User';

There were major changes to the css architecture, The fornt end no longer resides in the Harmony library package installed in node_modules, but it is now created in customer projects. With this update developers no longer need to try to override styling, but can use protected regions in the css.

  • Any scss file that does not sit in pages.scss will be overwritten by building your project. The best way to adjust your project to this change is to copy your scss folder into a different location, build your project and replace your custom code inside the right files. For example, if you have made custom changes in colors.scss such as changing the variable to a different value, place the file in another area of your computer, build your project, direct yourself to colors.scss in your project, turn on the protected region and replace the variable values that you had in your project.