DapperLib / DapperLib/DapperAOT

Support for Dapper 'Dapper.Contrib.Extensions'

Open
#139 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

analyzer
Dominant language
C#
Stars
472
Forks
43
Avg merge
1d 4h
Merged PRs (30d)
18

Description

While trying to convert a project to AOT, I noticed that the Dapper.Contrib.Extensions does not seem to be supported since it uses reflection to be able to generate Insert, Update and Delete statements on the fly. I wondered if the AOT tools could intercept these extension methods if found/used in the code and convert them so that AOT operation would work. As it stands, code that uses them is incompatible with AOT operation because Reflection gets used and an exception about Dynamic code generation being disallowed happens.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by examining Dapper.Contrib.Extensions and the AOT tools to understand how Insert, Update, and Delete extension methods currently rely on reflection and dynamic code generation. Define the supported conversion path and verify that code using these methods works under AOT without the reported exception.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.