gpt4 book ai didi

c# - 如何验证 CodeDOM 中的命名空间名称?

转载 作者:行者123 更新时间:2023-12-04 16:50:57 24 4
gpt4 key购买 nike

我从 SE 找到了使用 CodeDOM 的类名验证方法,并使用了它:

System.CodeDom.Compiler.CodeGenerator.IsValidLanguageIndependentIdentifier(字符串值)

通过此链接:Is there a .NET function to validate a class name?

但是,类名不允许使用“.” (OEM 时期)命名空间可以是这样的:例如,System.Linq 允许“.”。在选择诸如 Regex 或用于验证命名空间名称的循环之类的选项之前,我想知道 .NET 中是否有任何方法可以完成此任务。

编辑:

实际情况是,我有一个来自。用户可以从文本框中给出类名和命名空间。对于该类名和命名空间,我将给出生成的代码。如果用户输入 SomeClass 作为类名,输入 Some.Namespace 作为命名空间,则生成的代码将是:

namespace Some.Namespace   
{
class SomeClass{}
}

为此,我需要验证用户输入的这两个名称。

最佳答案

我尝试了一种不同的方法,它对我有用。

public bool IsValidNamespace(string input)  
{
//Split the string from '.' and check each part for validity
string[] strArray = input.Split('.');
foreach (string item in strArray)
{
if (! CodeGenerator.IsValidLanguageIndependentIdentifier(item))
return false;
}
return true;
}

关于c# - 如何验证 CodeDOM 中的命名空间名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15264018/

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