gpt4 book ai didi

c# - 使用 C# 验证 C# 语法

转载 作者:太空狗 更新时间:2023-10-30 00:44:47 24 4
gpt4 key购买 nike

我正在寻找一个可以用来验证 C# 语法的函数(也许 .Net-Framework 中有一个函数)。它也可以是具有内置验证功能的 C# 解析器。

背景:我正在构建一个小型代码生成器,用户可以在其中输入一些定义并取回完整实现的属性等,但我想检查用户是否输入了正确的 C# 以及结果是否也正确。

编辑:

不想编译代码,它可能是不完整的代码。因此,例如用户可以输入一个代码片段,其中包含他的代码中的类,我不知道,我只想验证语法,而不是“内容”

示例

输入:

Car car = new Car();
car.drive("50");

输出:

Same as input, because it's valid and nothing to do.

输入:

Car car = new Car()
car.drive("50");

输出:

Message that it is not valid, beause of missing ';'

等等

我不知道 Car 类,因此无法编译它,我只想检查语法。

最佳答案

如何使用 C# 编译器以编程方式编译代码:

http://support.microsoft.com/kb/304655

..它作为编译过程的一部分进行验证。您可以获得这样的错误列表(来自文章......令人惊讶,因为它有点困惑):

foreach(CompilerError CompErr in results.Errors)
{
textBox2.Text = textBox2.Text +
"Line number " + CompErr.Line +
", Error Number: " + CompErr.ErrorNumber +
", '" + CompErr.ErrorText + ";" +
Environment.NewLine + Environment.NewLine;
}

关于c# - 使用 C# 验证 C# 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6998364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com