How to provide user with equivalent Excel-VBA environment for my application in C #

I would like to give the user the opportunity to make their own report based on my class hierarchy (object in memory). A scripting language such as VBA: Visual Basic for Application. Something that will be evaluated at runtime.

I want the user to be able to dynamically create their own report based on some available objects with limited access, marked only with specific attributes. Give the user the opportunity to create macros where he has a similar model, for example, in VBA-Excel: Application / Workbook / WorkSheet / Range / ... but with my specific selected objects.

Then he could use intellisense and add his own functions to his application.

Update: There is something very important that seems to me. The editor should preferably be part of the application itself so that the script knows the whole environment (namespace, objects, ...) with which it should interact. Otherwise, the presence of a mechanism / script editor in a separate process will cause the application to be either an "instance of one instance" or create a sophisticated way to bind a script to a specific running application process.

It exists and how to connect it to a .net application?

4 solutions were proposed:

I also found:

  1. Scriptcs
  2. Roslynpad
  3. Project Code - Anoop Madhusudanan article: C # as a Scripting Language in Your .NET Applications Using Roslyn

But I wonder which one is suitable for all needs (or most of them):

  • Editor with Intellisense
  • ( , ). , : , .
  • , , , ,...
  • /
  • , #

:

  • # 2, VS, ( ).
  • # 6, , , ( ). , , №3. , , . Roslyn, , Microsoft, .

, - - , .

+4
2

, . , Roslyn .

, ( CS- Script) , (2014-10-21), intellisense. , . , . , .

, , . , , RoslynPad, . , , , RoslynPad ... , .

RoslynPad AvalonEdit, ( ).

:

  • # 1 ( , Roslyn ).
  • # 2
  • # 3 ( , Roslyn ).
  • # 4
  • # 5

, , .

0

, , , , . : Excel #.

, , , , , , .

Godspeed!

0

All Articles