Programmatically add an attribute to a method or parameter(以编程方式将属性添加到方法或参数)
问题描述
我可以使用 TypeDescriptor.AddAttributes 在运行时向类型添加属性.如何对方法和参数执行相同操作?(可能是 2 个单独的问题...)
I can use TypeDescriptor.AddAttributes to add an attribute to a type in runtime. How do I do the same for a method and parameter? (maybe 2 separate questions...)
推荐答案
TypeDescriptor.AddAttributes 只影响非常特定的用例;即来自 System.ComponentModel.对于反射的rest,它对额外的属性一无所知.事实上,System.ComponentModel 并不真正适用于方法或参数.
TypeDescriptor.AddAttributes only affects a very specific use-case; i.e. from within System.ComponentModel. For the rest of reflection, it knows nothing about the extra attribute. And indeed, System.ComponentModel doesn't really apply to methods or parameters.
简而言之;你不能.您需要将此信息存储在其他地方(定制),或在编译时添加.
So in short; you can't. You will need to store this information somewhere else (bespoke), or add it at compile-time.
这篇关于以编程方式将属性添加到方法或参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:以编程方式将属性添加到方法或参数
基础教程推荐
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
- C# 从 List<List<int>> 中删除重 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
- WPF 模态进度窗口 2022-01-01
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
