不带dynamic关键字的C#动态语句

不带dynamic关键字的C#动态语句,c#,dynamic,C#,Dynamic,我有一个返回字符串并获取字符串的方法: public static string GenerateValidIdentifier(string token) { using (var code = new CSharpCodeProvider()) { return code.CreateValidIdentifier(token); } } 当我称之为visualstudios时,它是一个动态的声明,我不想要。这里发生了什么?CSharpCodePro

我有一个返回字符串并获取字符串的方法:

public static string GenerateValidIdentifier(string token)
{
    using (var code = new CSharpCodeProvider())
    {
        return code.CreateValidIdentifier(token);
    }
}

当我称之为visualstudios时,它是一个动态的声明,我不想要。这里发生了什么?

CSharpCodeProvider是CodeDomProvider的一种方法,用于动态生成代码,因此无法在编译时(静态)确定其使用情况,因此它是动态的。如果不是用于动态编程,为什么要使用该方法?

能否粘贴调用该方法的代码和完整的错误消息?我只是用它来解析保留字。从方法上看,它没有标记为动态。。。我如何判断它是一个动态对象?