loading Irony.resources

Jan 10, 2014 at 7:58 PM
My Irony references (Iron.dll and Irony.Interpreter.dll, latest versions from NuGet as of today) are being loaded in a child app domain.

When the assembly resolution take place for the "Irony.resources" file, I load an return the Irony.dll assembly, but the .Net framework throws a FileNotFound exception "Could not find file 'Irony.resources'.". Apparently, this not the correct thing to do, but I don't see any other assemblies to try... My culture is neutral (en-US).

Anybody know how to handle this?
Jan 10, 2014 at 7:59 PM
Edited Jan 10, 2014 at 8:00 PM
Here's a quick snippet from the relevant exception's stack trace:
at System.Reflection.RuntimeAssembly.InternalGetSatelliteAssembly(String name, CultureInfo culture, Version version, Boolean throwOnFileNotFound, StackCrawlMark& stackMark)
       at System.Resources.ManifestBasedResourceGroveler.GetSatelliteAssembly(CultureInfo lookForCulture, StackCrawlMark& stackMark)
       at System.Resources.ManifestBasedResourceGroveler.GrovelForResourceSet(CultureInfo culture, Dictionary`2 localResourceSets, Boolean tryParents, Boolean createIfNotExists, StackCrawlMark& stackMark)
       at System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo requestedCulture, Boolean createIfNotExists, Boolean tryParents, StackCrawlMark& stackMark)
       at System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo culture, Boolean createIfNotExists, Boolean tryParents)
       at System.Resources.ResourceManager.GetString(String name, CultureInfo culture)
       at Irony.Resources.get_LabelLineBreak() in c:\Users\jhaltom\Development\irony\Irony\Resources.Designer.cs:line 851
       at Irony.Parsing.NewLineTerminal..ctor(String name) in c:\Users\jhaltom\Development\irony\Irony\Parsing\Terminals\NewLineTerminal.cs:line 23
       at Irony.Parsing.Grammar..ctor(Boolean caseSensitive) in c:\Users\jhaltom\Development\irony\Irony\Parsing\Grammar\Grammar.cs:line 403
       at Irony.Interpreter.InterpretedLanguageGrammar..ctor(Boolean caseSensitive) in c:\Users\jhaltom\Development\irony\Irony.Interpreter\InterpretedLanguageGrammar.cs:line 28
       at Irony.Interpreter.Evaluator.ExpressionEvaluatorGrammar..ctor() in c:\Users\jhaltom\Development\irony\Irony.Interpreter\_Evaluator\ExpressionEvaluatorGrammar.cs:line 36
Jan 11, 2014 at 3:44 AM
it is obviously not the problem of Irony itself, but with a loading process - it could be any dll with satellite assembly. Just google/msdn stuff, find out how to investigate/debug/fix this assembly loading paths problem
Jan 11, 2014 at 12:11 PM
I spent 4 hours searching for a solution, and accidentally bumped into it. I need to return null from assembly resolve method.

Sent from my iPad