I’d like to host Javascript in my C# program. I would like to allow users to write custom Javascript code, and have my C# program run their functions, as well as allow the users to use my framework code.
Is it possible to do this? If so, how?
Edit: To be clear, I am not using ASP.NET for this project.
you can also use a webbrowser control to host the javascript in a html document, to interact between the two you would make a COM visible class and set an instance of it to the ObjectForScripting property.
Any public members of the ‘external’ class are now accessible through window.external in javascript. Also, from the managed code side you can use the InvokeScript method of the document to call any javascript functions.
This way it is easy to pass complex objects between the two.
I used this idea quite a bit in this Google Earth Api application. http://fraserchapman.blogspot.com/2008/08/google-earth-plug-in-and-c.html