2013-04-26 10 views
5

C'è un modo per inserire attributi sulle proprietà in un tipo anonimo? O il tipo anonimo stesso? Se non quando lo crei, forse in seguito tramite la riflessione?C'è un modo per mettere attributi su proprietà di tipo anonimo?

Come un potenziale scenario di utilizzo, mi permetta di prendere in prestito da Dapper:

Nel fornire i parametri per eseguire una query in Dapper, è necessario fornire i parametri in un tipo anonimo:

connection.Query<Foo>(sql, new { Id = guid, Condition = true }); 

Diciamo che avevo bisogno per comunicare qualcosa sulla mappatura come forse memorizziamo booleani come testo T/F (orribile, ma tristemente vero per esperienza di vita reale), quindi voglio aggiungere un attributo a quella proprietà Condition per dire a Dapper come mapparlo (ancora questo è un esempio un po 'forzato) . È possibile?

risposta

6

No, non è possibile farlo al punto di dichiarazione o in seguito con la riflessione.

Il più vicino possibile sarebbe utilizzare un tipo anonimo esistente come base per un nuovo tipo creato con CodeDom, o forse Mono Cecil.

ho il sospetto che sarebbe meglio basta scrivere il codice manualmente da soli, invece.

Problemi correlati