Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7167815
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 28, 20262026-05-28T14:39:11+00:00 2026-05-28T14:39:11+00:00

I like the micro approach of Dapper, Massive, PetaPoco etc. and I like to

  • 0

I like the “micro” approach of Dapper, Massive, PetaPoco etc. and I like to have control over the SQL we send to the database, most of the time it’s relatively simple. I also like working with POCO’s however when dealing with a somewhat flexible schema design you often run into trouble 🙂

Let’s say we have a Person entity, that ALWAYS have the following properties.

  • Id
  • Name
  • Email
  • Phone

But in some cases there might be additional properties like

  • SpecialPhoneNumber
  • VeryCustomValue

I would really like a POCO with the common properties that we know will always be there. But have the other accessible in a key/value collection.

What would be the best approach? And does any of the mentioned “mirco-orm’s” support this? I have looked at them all but have not found any indication that they do, but maybe I’m missing something.

Would it be possible to do this directly with an SqlDataReader? or would the performance of reading hundreds of rows be bad when using reflection to create the objects? The mentioned orm’s all seem to do pretty well and I guess the use a DataReader underneath.

Hope you can help 🙂

EDIT: I should probably mention that we have no control over the application architecture. This is an ERP solution that allows the individual customer to customize their application and the underlying database. Adding fields in the application adds columns in the database. Bad me! for not making that clear in the first place

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-28T14:39:11+00:00Added an answer on May 28, 2026 at 2:39 pm

    Massive can support this, because it materializes data into ExpandoObject‘s:

    The secret sauce is the ExpandoObject. Everything that goes in and
    everything that comes out of Massive is an Expando – which allows you
    to do whatever you want with it. At it’s core, an ExpandoObject is
    just an IDictionary< string,object >

    ExpandoObject implements IDictionary<string, Object> and IEnumerable<KeyValuePair<string, Object>>, so you can enumerate and test for members in any way you need to.

    Massive’s default is to issue a SELECT * query, so the ExpandoObject will contain all fields in the table, even those you do not know about.

    You can get Massive’s current code from Github.

    Dapper can also select into dynamic objects, but unlike Massive it can only select data and cannot insert, update, or delete it. EDIT: Reviewing the Dapper docs, it appears it can perform modifications, as it can execute any sql. There is some more recent information about performing inserts with Dapper.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm using the Dapper micro ORM. I thought it could handle enumerables like this:
I have a big list, but micro example would be like the following: A
I am using Caliburn.Micro I have this WPF View that in design time uses
It doesn't seem like the Caliburn Micro framework is retrieving my SinglePaintToolbarView when it
I would like start with .NET Micro Framework as my hobby project. What hardware
If you have a macro like this in C: #define SLICE_VERSION 20110614 How to
I have a typedef in an if macro, something like: #ifdef BLA_BLA typedef int
I have 1 routine that is structured like this: C# console C opens xl
I have a SAS dataset that looks like this: var _12 _41 _17 12
I'm writing a kiosk-like micro-browser which opens specific pages based on payload of specific

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.