Avant de commencer laissez-moi raconter mon expérience: je suis expérimenté avec C# .NET, services web, partie XML et quelques autres. La réflexion est quelque chose de nouveau pour moi, bien que j'aie beaucoup lu et expérimenté du code expérimental, mais que je n'ai pas fait grand chose en utilisant la réflexionTypes d'enregistrement générés via Reflection.Emit comme fichier de code (.cs) au lieu de l'enregistrer dans les fichiers .dll
J'ai découvert many examples
comment on peut créer Type à l'exécution et ensuite être enregistré dans un fichier d'assemblage (.dll). De tous les exemples que j'ai vu est d'enregistrer les types créés dans les fichiers .dll au lieu du fichier de code. N'y at-il aucun moyen de créer le fichier de code hors de la réflexion?
J'ai besoin de créer un fichier de code puisque je veux distribuer du code au lieu d'assemblys compilés. Ce que je veux faire est quelque chose comme xsd.exe
, soit cracher un fichier .dll ou le fichier de code (dans n'importe quelle langue).
est pas là un moyen de créer un fichier de code, puisque la plupart de l'endroit où je peux trouver est
AssemblyBuilder ab = System.AppDomain.CurrentDomain.DefineDynamicAssembly(an, AssemblyBuilderAccess.Save);
puis enfin
ab.Save("QuoteOfTheDay.dll");