Open OwenPattison opened 2 years ago
Bumped into same problem. In my case I was using Fluid.Core 2.9 package in another part of my application. This caused issues with Liquid Renderer. I assume that there was a breaking change in Fluid.Core and their recent versions are not compatible with the one used by FluentEmail.
Ran into the same problem. NJsonSchema uses Fluid 2.9 and it appears this version of FluentEmail.Liquid
uses Fluid.Core >= 2.0.13
but BaseFluidTemplate.cs
appears to have been deleted by Fluid.Core 2.0. I cannot find a reference to it in the FluentEmail.Liquid
library however, despite the error.
This renderer is working fine in another project of mine but I noticed when I installed it, it pulled in Fluid.Core
1.0. Not sure why... but that works. Unfortunately, since other things like NJsonSchema have a dependency on a later version, I seem have to choose on or the other; emails or jsonschemas...
It seems to happen when the control returns to the ParseAsync
method here:
Which is the first time it tries to do anything with the viewTemplate which was parsed earlier on, here:
Turns out that TryParse is actually an extension method on the Fluid.Core
library which calls another extension method Parse
here:
And returns the fluid template where RenderAsync
is being called:
From here I am lost. I still don't see any reference to BaseFluidTemplate but I would have guessed this FluidTemplate
class was previously derived from BaseFluidTemplate
and I confirmed that here in their 1.0 tag:
Sooooo.... I don't know what's goin on. Some sort of phantom reference?
Hello, I've been using the v3.0.0 of
FluentEmail.Core
along withFluentEmail.Liquid
with no problems for the past year or so, however, I have upgraded NSwag to the latest version and now we are unable to create emails due to the following error being thrown:Error. System.TypeLoadException: Could not load type 'Fluid.BaseFluidTemplate`1' from assembly 'Fluid, Version=0.0.0.0, Culture=neutral, PublicKeyToken=omit'. at FluentEmail.Liquid.LiquidRenderer.ParseAsync[T](String template, T model, Boolean isHtml) at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine) at FluentEmail.Liquid.LiquidRenderer.ParseAsync[T](String template, T model, Boolean isHtml) at FluentEmail.Liquid.LiquidRenderer.Parse[T](String template, T model, Boolean isHtml) at FluentEmail.Core.Email.UsingTemplateFromFile[T](String filename, T model, Boolean isHtml)
Looking through release notes for NSwag 13.15.0 it seems they have migrated to use Fluid, I suspect there could be a mismatch of dependencies now between libs. I've been unable to diagnose the issue any further thus far but any help would be appreciated.