autofac/Autofac

Support Delegate Factories when compiled in AOT mode

開放

#1,449 建立於 2025年3月26日

 (2 則留言) (0 個反應) (0 位負責人)C# (827 個分叉)batch import
enhancementhelp wanted

倉庫指標

星標
 (4,327 顆星)
PR 合併指標
 (平均合併 3小時 24分鐘) (30 天內合併 10 個 PR)

描述

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

貢獻者指南