Commit graph

315 commits

Author SHA1 Message Date
Sipke Schoorstra 7390fcd8ab Remove reference to deleted project 2020-04-13 12:05:54 +02:00
Sipke Schoorstra c186a490af Fix AutoMapper issue
Due to a bug with registering AutoMapper profiles, only the first mapping profile would get registered.
Also merged AutoMapper utilities into Elsa.Core.
2020-04-13 12:01:50 +02:00
Sipke Schoorstra 277272f736 Update Sample24 to use Sqlite 2020-04-13 11:41:53 +02:00
Sipke Schoorstra a17481c929 Merge branch 'issue/274' into develop 2020-04-13 11:40:39 +02:00
Ibrahim Hammad 3618a773e3
Correct sample paths (#284) 2020-04-06 16:03:07 +02:00
Edward Morgan e7b838cbfb
Update ForEach.cs (#285)
on designer not apper Done and Iterate ways.
2020-04-06 16:02:08 +02:00
Sipke Schoorstra f3f5b2d931
Fix missing mapping issues (#279) 2020-04-02 22:11:13 +02:00
Sipke Schoorstra 313787a01f Fix missing mapping issues 2020-04-02 22:09:24 +02:00
Sipke Schoorstra d177dd2ada
Update LICENSE 2020-04-02 20:06:28 +02:00
Sipke Schoorstra db2729ffd1 Update README.md 2020-03-28 22:57:35 +01:00
Sipke Schoorstra 0a5a88d546 Add CONTRIBUTING.md 2020-03-28 22:55:09 +01:00
Sipke Schoorstra df54e1527e Add .gitattributes 2020-03-28 22:38:52 +01:00
Sipke Schoorstra 2da16019f5 Update README with .NET Foundation's Code of Conduct 2020-03-28 22:01:35 +01:00
Sipke Schoorstra 5bf994c485
Fix duplicate automapper profiles (#270) 2020-03-27 21:11:05 +01:00
Sipke Schoorstra 707eed6f6f Update designer package reference to latest v1 2020-03-16 14:40:00 +01:00
Sipke Schoorstra 8ec43230a7 Improve JS value converter to support object target type 2020-02-20 21:24:34 +01:00
Yuhang Ji a9a4f78459
Resolve https://github.com/elsa-workflows/elsa-core/issues/250 (#251) 2020-02-20 10:30:30 +01:00
James Doran 0e9cd54c2e
Fixed stackoverflow when finding ancestors (#247) 2020-02-17 18:06:40 +10:30
Sipke Schoorstra 48be0e8a87
Always add startup runner hosted service (#238) 2020-01-18 11:59:47 +01:00
Sipke Schoorstra 16e91e0de1
Replace TaskExecutingServer with StartupRunnerHostedService (#237)
This solves an issue where the Dashboard site would not be able to run in IIS, due to an IIS filter that expects a IISServer instance, while it was being decorated with a custom type.

Fortunately, as of .NET Core 3, background hosted services now execute before the server starts, which makes them perfect for async initialization.
2020-01-18 11:04:53 +01:00
James Doran 434754e466 Fixed yaml serialisation and updated to YamlDotNet (#236)
* Fixed Yaml serialisation/deserialisation

Copied json serializer settings from JsonTokenFormatter, apart from CamelCasePropertyNamesContractResolver, as the yaml already had the correct case, and this would cause activity state (which has PascalCasing) to be camelCased too

* Updated YamlDotNet.Standard to YamlDotNet

Switched package as YamlDotNet.Standard has been unlisted on Nuget
2020-01-16 08:31:19 +01:00
Sipke Schoorstra 4bc499ce1d
Use Duration instead of Period (#235)
Duration is semantically more correct in the context of were it's used.
2020-01-15 23:56:57 +01:00
Sipke Schoorstra ce35cef214
Fix designer factories (#234) 2020-01-15 22:51:41 +01:00
Sipke Schoorstra e46f59d30e
Update packages (#233) 2020-01-15 22:39:47 +01:00
Sipke Schoorstra 5836e2f5f1
Fix an issue where some DB Context factories use the base ElsaContext type instead of the derived type, causing a "Unable to resolve service for type 'Microsoft.EntityFrameworkCore.DbContextOptions`1[]' while attempting to activate" error (#232) 2020-01-15 22:35:15 +01:00
terry-delph 1b333fec1a Feature/mysql support efcore (#226)
* Added MySqlContext
* Added MySqlContextFactory
* Added Pomelo.EntityFrameworkCore.MySql nuget package
* Added initial MySqlContext migrations

* Added support for creating derived ElsaContexts:
- Added new protected constructor based on following post
- https://github.com/dotnet/efcore/issues/7533

* Added Sample 24 - MySql provider with migration execution
* Updated other samples that needed to define the derived ElsaContext

* Added summary to ElsaContext constructor

* Updated persistence/Elsa.Persistence.EntityFrameworkCore MD file with MySql example
2020-01-14 23:01:10 +01:00
Sipke Schoorstra 6ea6498ca0 Fix issue due to parallel access to DbContext
Fixes #219
2020-01-06 21:11:05 +01:00
James Doran 7aa9f0510f
Fixed Serialization for Objects (#220)
Registered ObjectHandler in TypeNameHandlingConverter
Passed through object type in IValueHandler.Serialize to be written as TypeName
2020-01-06 19:32:25 +10:30
Sipke Schoorstra b2ad297a0d Fix README.md 2020-01-04 11:17:11 +01:00
Sipke Schoorstra 0fbb47ff8f Fix broken Sample23 2019-12-21 10:45:16 +01:00
Sipke Schoorstra 80ad40824e
Fix broken date/time/nodatime serialization (#214)
Added extensible support for specialized primitive handling such as
DateTime and NodaTime primitives.

This fixes the issue where a Variable is serialized using a primitive's
string representation and losing the target type, which is needed for
reconstructing the type upon deserialization.
2019-12-21 10:05:10 +01:00
James Doran 6addf0f974
YesSql now stores schema version (#213) 2019-12-21 08:54:32 +10:30
Sipke Schoorstra 57a8693c21
Explicit EF identity specification + DateTime serialization issue (#212)
* Explicitly specify identity for Id columns

This fixes an issue where EF Core 2.2 does not set Identity = Yes when
defining the Id columns.

* Fix DateTime serialization issue

This change fixes an issue by taking over the serialization of a DateTime value.
The problem with serializing a DateTime value as-is is that upon deserialization, the JToken type would be set as String instead of Date.
This is because NodaTime disables automatic date time handling for Instant types.
However that causes an issue when trying to serialize and deserialize DateTime values.

This change explicitly tests for DateTime values and handles it appropriately.
A future improvement might be to make this TypeNameHandlingConverter class extensible by implementing a provider-based model,
enabling developers to take control over how certain types are serialized.
2019-12-19 17:07:23 +01:00
Sipke Schoorstra 1daf8e25a0 Remove compiler warnings 2019-12-17 21:44:40 +01:00
Nate Hughey e55c17ea92 Feature - Customize Elsa.Persistence.EntityFrameworkCore Migrations and Schema (#204)
* Added PostgreSql support to Elsa.Persistence.EntityFrameworkCore via Npgsql.
* Customize Elsa.Persistence.EntityFrameworkCore Migrations and Schema.
* Added Context factory in Sample23 to use the IDbContextCustomSchema.
* Refactor the Custom Schema support to use the EFCore IDbContextOptionsExtension.
2019-12-17 21:38:58 +01:00
James Doran 205487425a
Variable fixes (#211)
* GetVariable<T> now uses Convert.ChangeType

Fixes issue where saving an Int32, serialising and deserialising, then accessing with GetVariable<int>(...) no longer causes type cast exception.
The saved value is a JValue which treats Int32 as Int64. Convert.ChangeType has a better chance of performing conversion without error.
Also returns default of T if the variable isn't found.

* Added SetVariable overload in Variables

To prevent double-wrapping objects in more than 1 Variable object
2019-12-13 17:51:01 +10:30
James Doran c8d7ac076f YesSql instance storage fixes (#209)
* WorkflowInstanceIndex now stores records correctly
* Saving a workflow instance now updates existing instance rather than creating a new document
* Fixed serialisation exception when saving existing instance containing NodaTime types
2019-12-11 08:15:05 +01:00
Sipke Schoorstra 61c9ac48c7 Update packages 2019-12-10 15:46:49 +01:00
Andale-online d9e27377b0 Feature: Startup Activities (#206)
* Feature: Startup Activities
2019-12-04 18:20:01 +01:00
Sipke Schoorstra 21744a5056 Update Sample04 with printing execution log to console 2019-12-04 13:10:47 +01:00
nhughey-evo a89897b8e1 Feature: Persistence Provider -> Added PostgreSql support to Elsa.Persistence.EntityFrameworkCore via Npgsql (#201) 2019-11-28 11:35:30 +01:00
Sipke Schoorstra 98fe6d21d7 Add SQL Server example 2019-11-26 22:54:06 +01:00
James Doran 7356bf10c8 Moved JavaScript DI extension method namespace (#179) (#196) 2019-11-23 08:21:20 +01:00
Antoine Griffard 6c2960e1dd Fix link on Orchard Core doc (#195) 2019-11-22 23:52:10 +01:00
Sipke Schoorstra ac3ea9573f Add icons to packages 2019-11-22 17:34:55 +01:00
Sipke Schoorstra 4b78e2740b Package icon test 2019-11-22 17:21:42 +01:00
Sipke Schoorstra a16811f517 Add Elsa.Activities.Reflection package to solution 2019-11-22 16:25:19 +01:00
James Doran 2e3993c472 Switch activity now sets "Result" output variable with the expression result (#193) 2019-11-22 15:32:41 +01:00
Peter Davis 2eab1fc080 Control flow extension methods (#192)
Just makes the code a little more readable 🙂
2019-11-22 15:32:19 +01:00
Sipke Schoorstra 675c0e94b0
Replace SmtpClient from System.Net.Mail with MailKit's (#194)
* Replace SmtpClient from System.Net.Mail with MailKit's
2019-11-22 15:29:35 +01:00