autofac/Autofac

Support Delegate Factories when compiled in AOT mode

Offen

#1.449 geöffnet am 26.03.2025

 (2 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)C# (827 Forks)batch import
enhancementhelp wanted

Repository-Metriken

Stars
 (4.327 Sterne)
PR-Merge-Metriken
 (Durchschn. Merge 3h 24m) (10 gemergte PRs in 30 T)

Beschreibung

Problem Statement

Using delegate factories in Autofac when AOT mode is on causes exceptions because it emits JIT compiled methods. I was not sure whether to open this as a bug or not as I didn't know if it is a supported use case. At the very least, this documentation page https://autofac.readthedocs.io/en/latest/advanced/delegate-factories.html could be updated to state that AOT is not supported.

Desired Solution

Frankly, I'm not sure if its possible to easily support this use case, but perhaps it can be done by generated source code. The desired solution is that delegate factories would work in AOT mode.

Alternatives You've Considered

We could refactor our code base to manually resolve these dependencies but we loose a lot of flexibility.

Additional Context

This problem was discovered when deploying a iOS app in release mode

Contributor Guide