Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public sealed class VariantProcessor
- {
- private readonly Lazy<IEntityVersion> _entityVersion;
- private string _myAppConnectionString { get; set; }
- private readonly Action<Variant> _transform;
- public Variant(Func<IEntityVersion> entityVersion,string _myAppConnectionString,Action<Variant> transform)
- {
- _entityVersion = new Lazy<IEntityVersion>(entityVersion);
- _myAppConnectionString = _myAppConnectionString;
- _transform = transform;
- }
- public void Process(Variant model)
- {
- string variantVersion =string.empty;
- try
- {
- _transform(model);
- try
- {
- variantVersion = _entityVersion.Value.GetVersion();
- }
- catch (Exception)
- {
- //rollback Transform operation
- }
- }
- catch (Exception)
- {
- }
- }
- }
- public class AggregateCalculator : IVariantProcessor
- {
- private string _myAppConnectionString { get; set; }
- public void Process(Variant model)
- {
- _myAppConnectionString = ConfigurationManager.ConnectionStrings["dbConnectionString"].ConnectionString;
- new VariantProcessor( () => new EntityVersion(_myAppConnectionString),_myAppConnectionString,
- () => Transform(model));
- }
- private void Transform(Variant model)
- {
- //logic
- }
- }
- variantVersion = _entityVersion.Value.GetVersion();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement