如何在不使用#pragma的情况下抑制C#中的编译器警告?

如何在不使用#pragma的情况下抑制C#中的编译器警告?,c#,.net,suppress-warnings,C#,.net,Suppress Warnings,我需要在C#中抑制一个特定的编译器警告。现在我可以这样做: #pragma warning disable 0649 private string _field; #pragma warning restore 0649 有没有像下面这样的方法 [SuppressCompilerWarning("0649")] private string _field; 因为我只需要抑制此字段的警告,而不是代码块 注意:我想取消显示编译器警告,而不是代码分析警告 谢谢 不可以。您可以通过构建标志在整个

我需要在C#中抑制一个特定的编译器警告。现在我可以这样做:

#pragma warning disable 0649

private string _field;

#pragma warning restore 0649
有没有像下面这样的方法

[SuppressCompilerWarning("0649")]
private string _field;
因为我只需要抑制此字段的警告,而不是代码块

注意:我想取消显示编译器警告,而不是代码分析警告


谢谢

不可以。您可以通过构建标志在整个项目范围内执行此操作,但否则字段只是另一个(小)块

当然,你可以在某处给它赋值。。。那会让它快乐-p(我假设它实际上是通过反射或其他方式被赋值的?

不:

private string _field = null;

同时删除警告?

你说得对。它将由DI框架进行辅助,外部世界不应看到该字段。问题是,使用#pragma对真的很无聊。@Dylan-然后在某个地方给代码一个值。坦率地说,大部分代码的大块可能被认为是“无聊的”——但它们是关键的。