SourceImports 屬性
private StringCollection mySourceImports = new StringCollection();
public StringCollection SourceImports => mySourceImports;
- 初始化預設添加
System、Microsoft.VisualBasic
- 使用者可添加如
System.Drawing 等命名空間,減少腳本代碼前綴
運行時代碼生成
string moduleName = "mdlXVBAScriptEngine";
string nsName = "NameSpaceXVBAScriptEngine";
StringBuilder src = new StringBuilder();
src.Append("Option Strict Off");
foreach (string imp in mySourceImports)
src.Append("\r\nImports " + imp);
src.Append("\r\nNamespace " + nsName);
src.Append("\r\nModule " + moduleName);
src.Append("\r\n");
src.Append(strScriptText); // 使用者原始腳本
src.Append("\r\nEnd Module");
src.Append("\r\nEnd Namespace");
string strRuntimeSource = src.ToString();
生成結構說明
Option Strict Off
Imports System
Imports Microsoft.VisualBasic
Imports System.Drawing // 使用者添加
Namespace NameSpaceXVBAScriptEngine
Module mdlXVBAScriptEngine
Sub 腳本方法1()
' VB.Net 代碼
End Sub
Sub 腳本方法2()
' VB.Net 代碼
End Sub
End Module
End Namespace
Option Strict Off 寬鬆型別檢查,適合腳本快速開發
- 斜體部分為使用者提供的原始腳本,其餘由引擎自動包裝
- 模組層級成員配合
StandardModuleAttribute 與 /imports 實現全域可見