[英]Is the name Secrets an invalid name for a class in C#
我可能犯了一个愚蠢的错误,但我看不到它。
我按照这里的简单 Newtownsoft 示例向我的项目添加了一个自定义类。
namespace MyApp
{
public class Secrets
{
public string Test {get;set;}
}
}
但是当我在 Program.cs 中引用该类时:
namespace MyApp
{
static class Program
{
[STAThread]
static void Main()
{
<snip>
string json = FetchJson();
var MySecrets = JsonConvert.DeserializeObject<Secrets>(json); // this line
}
}
}
Visual Studio 在<Secrets>
下划线并表示找不到类型或命名空间“Secrets”。 但是项目编译没有错误。
如果我将类的名称更改为Sekrets
那么 Visual Studio 会找到它并且很高兴。
PS 如果我然后将文件从Sekrets.cs
重命名回Secrets.cs
并让 VS 进行全局更改,那么 VS 仍然很高兴,没有错误,没有红色下划线。
PS 如果我然后将文件从 Sekrets.cs 重命名回 Secrets.cs 并让 VS 进行全局更改,那么 VS 仍然很高兴,没有错误,没有红色下划线。
听起来像是 Intellisense 数据库问题,您通常通过关闭 VS 然后删除.vs
文件夹来解决这些问题。 下次打开解决方案时,VS 将从头开始重建数据库。
幸运的是,它在 C# 中几乎从未发生过,因为它是一种比 C++ 更容易解析的语言。 Intellisense 在解析它时确实存在问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.