小编SMu*_*ani的帖子

从.txt文件加载VB.net代码,并使用System.CodeDom.Compiler在飞行中执行它

我已经在这篇文章中找到了这个问题的答案:https://stackoverflow.com/a/14711110/1764912

但是我的下一个查询是,当我尝试在这个动态代码中声明一个DataTable或MsgBox时,它给我一个错误,"Type'DataTable'未定义"和"Type'MsgBox'未定义"是.如果我使用动态代码中的第一行添加导入:

Imports System.Data
Run Code Online (Sandbox Code Playgroud)

要么

Imports System.Data.DataTable
Run Code Online (Sandbox Code Playgroud)

或者如果我在GenerateScript()函数中使用以下任何代码(请参阅/sf/answers/1029777731/以获取GenerateScript()函数)

Dim importDataNameSpace As String = GetType(DataTable).Namespace
Dim codeArray() As String = New String() {"Imports " & importDataNameSpace & Environment.NewLine & code}
Run Code Online (Sandbox Code Playgroud)

或者如果我使用

Dim codeArray() As String = New String() {"Imports System.Data" & Environment.NewLine & code}
Run Code Online (Sandbox Code Playgroud)

要么

Dim codeArray() As String = New String() {"Imports System.Data.DataTable" & Environment.NewLine & code}
Run Code Online (Sandbox Code Playgroud)

在上述所有情况下,它都会给我一个错误"System.Data不包含任何公共成员或找不到".

vb.net codedom

3
推荐指数
1
解决办法
7326
查看次数

标签 统计

codedom ×1

vb.net ×1