我如何在字符串中使用代码,不要让它执行?

时间:2018-06-05 11:26:54

标签: c# string winforms function

我需要添加vs认为它是代码的文本,我使用richTextBox来保存代码因为我不知道如何将它放入代码中因为vs认为这是代码但它只是需要发送到的文本以后的功能。

我尝试过类似的东西:

string something = @"_G.WS = {arg1};

local Humanoid = game:GetService("Players").LocalPlayer.Character.Humanoid;
Humanoid:GetPropertyChangedSignal("WalkSpeed"):Connect(function()
Humanoid.WalkSpeed = _G.WS;
end)
Humanoid.WalkSpeed = _G.WS;";

*这里的所有代码都只需要一个多行文字

但是视觉工作室认为这是代码而不是文本。

我尝试使用反斜杠,但这也没有帮助。 richTextBoxes工作,但我需要更改该文本中的变量,但如果我不能在代码中的texbox中执行任何操作,我该如何更改它。

我需要做这样的事情:

function($@"_G.WS = {arg1};

local Humanoid = game:GetService("Players").LocalPlayer.Character.Humanoid;
Humanoid:GetPropertyChangedSignal("WalkSpeed"):Connect(function()
Humanoid.WalkSpeed = _G.WS;
end)
Humanoid.WalkSpeed = _G.WS;");

*这里的所有代码都只需要一个多行文字

它只需要一个文本而不是代码,$,@不会帮助。

我不知道有任何其他方法可以做到这一点。

如果可能,我该怎么做?

1 个答案:

答案 0 :(得分:1)

您可以通过两种方式执行此操作:

添加适当的语录和转义序列,如:

string something = @"_G.WS = {arg1};
 local Humanoid = 
 game:GetService(""Players"").LocalPlayer.Character.Humanoid;
 Humanoid: GetPropertyChangedSignal(""WalkSpeed""):Connect(function()
 Humanoid.WalkSpeed = _G.WS;
            end)
 Humanoid.WalkSpeed = _G.WS; ";

请注意在您需要的实际引用后的额外引用?解释器需要正确解析字符串。

否则,您可以将其存储在.NET提供的项目设置中:

enter image description here

推荐链接:Settings in C#

用法示例:

this.someting = Properties.Settings.Default.Something;

如果我是你,我会避免在代码中避免使用魔术字符串并将其保存在XML文件或自定义存储文件中。如果您想要更改字符串,那么您不必担心构建和部署应用程序再次只是一个字符串编辑。