Вещи как это:
using (var conn = new SqlConnection("connection string"))
{
conn.Open();
// Execute SQL statement here on the connection you created
}
Это SqlConnection
будет закрыто, не будучи должен явно звонить эти .Close()
функция, и это произойдет , даже если исключение будет выдано без потребности в try
/ catch
/ finally
.
Я знаю, что это старый вопрос, но у меня были аналогичные требования ранее, и я узнал об Managed Scripting . Похоже, изначально он был разработан для решения проблемы написания сценариев в играх XNA, так что это даже лучше.
С веб-сайта:
Managed Scripting Engine
Managed Scripting предоставляет быстрое и простое решение для разработчиков, которым необходимо реализовать скриптовый движок в свои решения. Управляемые сценарии поставляются с прямым механизмом сценариев, который может компилировать и создавать экземпляры сценариев на лету, генерировать сборки в памяти или локально на жестком диске, а также позволяет динамически вызывать методы и получать доступ к свойствам во время выполнения. ManagedScripting работает в Windows Vista, XP, Linux, XBox 360 и Microsofts Zune Player со сценариями, написанными с использованием Visual Basic или C # в качестве языка с планами добавления поддержки Ruby, Python и JScript.
Я не изучал это более подробно. я, но это похоже на то, что мы хотим.
Lua часто используется для написания игровых сценариев. World of Warcraft, например, предлагает его всем создателям модов.
Также посетите эти сайты:
Я хотел бы указать на этот связанный вопрос SO , добавив Javascript в качестве опции. Некоторым Javascript будет более знаком, чем Lua.
Вы можете изучить VSTA, он предоставляет C # или VB.Net. Я не знаю о компиляции среды выполнения.