How to throw compilation error from an attribute?(如何从属性中抛出编译错误?)
问题描述
.NET 中有 属性(例如 ObsoleteAttribute) 能够阻止编译或至少抛出编译时警告,具体取决于它们的配置.
there are attributes in .NET (e.g. ObsoleteAttribute) which are able to prevent compilation or at least throw compile time warnings depending on their configuration.
如何编写能够干扰编译的属性?有没有办法从 Microsoft 外部执行此操作?
How to write an attribute that is able to interfere with compilation? Is there a way to do this from outside Microsoft?
推荐答案
Obsolete 属性是编译器魔法"——你不能在不修改编译器的情况下自己做这样的事情.但是,与往常一样,有一些解决方法 - 例如看看 this 和 这个线程.
Obsolete attribute is "compiler magic" - you can't do something like this on your own without modifying the compiler. However, as always, there are workarounds - e.g. take a look at this and this thread.
这篇关于如何从属性中抛出编译错误?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何从属性中抛出编译错误?
基础教程推荐
- 在 VB6 或经典 ASP 中使用 .NET 2022-01-01
- 获取C#保存对话框的文件路径 2022-01-01
- 重新排序 WPF TabControl 中的选项卡 2022-01-01
- C# 9 新特性——record的相关总结 2023-04-03
- 从 C# 控制相机设备 2022-01-01
- Mono https webrequest 失败并显示“身份验证或解密失败" 2022-01-01
- 如果条件可以为空 2022-01-01
- 将数据集转换为列表 2022-01-01
- SonarQube C# 分析失败“不是指针的有效行偏移" 2022-01-01
- 更新 Visual Studio 中的 DataSet 结构以匹配新的 SQL 数据库结构 2022-01-01
