Is it possible to load and execute C# snippets using DLR?
Asked Answered
G

3

8

The majority of material I have found regarding DLR is related to IronPython. Can you parse and execute C# using DLR? If so is there over head that would prevent you from attempting this on a web server with about 30 users?

More specifically I would like to script the configuration of my workflow objects when a user first initiates a workflow. Depending on conditions that change through out the year workflows may start at different steps, hence running configuration scripts seems like a good way to handle the variation.

Giacopo answered 19/6, 2009 at 20:39 Comment(0)
G
0

Although Marc offered an alternative for me, I read this related SO question and C# and VB are not supported as of yet.

Giacopo answered 19/6, 2009 at 21:16 Comment(0)
N
4

It sounds like you're really talking about the C# "compiler as a service" (at the end of this video), which will hopefully be in the 5.0 timescale for .NET (although Mono has it now). For now, CSharpCodeProvider is the best we have (which works largely like "csc").

Naldo answered 19/6, 2009 at 20:49 Comment(4)
Thanks - was reading your blog today. Good stuff. Basically I debating whether I go the CSScript.net route or pursue the CSharpCodeProvider way.Giacopo
Marc, can you recommend some good samples beyond the MSDN link? Thanks again.Giacopo
Which - compiler as a service? Kinda hard, since it doesn't exist and won't for another year or so (at a guess). Or did I misunderstand the question...?Naldo
I don't know of any specific ones - but it isn't hard an IMO the MSDN example shows a lot of it. The main trick is remembering to includ C# 3.0: var compiler = new CSharpCodeProvider(new Dictionary<string, string>() { { "CompilerVersion", "v3.5" } });Naldo
G
0

Although Marc offered an alternative for me, I read this related SO question and C# and VB are not supported as of yet.

Giacopo answered 19/6, 2009 at 21:16 Comment(0)
O
0

You may find this relevant...though it doesn't run on the DLR itself.

Mono Compiler as a Service (MCS)

It has the advantage of running snippets and not loading a new assembly on every compile like CodeDom does.

Outshine answered 2/9, 2010 at 16:15 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.