c# - 有没有办法获取具有 set 方法的属性?
问题描述
我有一个包含属性的类。其中一些只是为我创建必要信息的吸气剂。
在我的一个 BLs 服务中,我目前正在使用一些反射方法从另一个 api 字典创建一个映射到我的实体。主要问题是,如果没有 set 方法,就很难找到分离属性的解决方案。
我检查了BindingFlags
但没有找到适合这种情况的任何东西。当然必须有一个内置的解决方案。
有什么建议么?
解决方案
您可以通过以下方式从属性本身获取 getter 和 setter 信息:
var properties = mytype.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance);
foreach (var item in properties)
{
if (item.CanRead)
{
// has at least the getter
}
if (item.CanWrite)
{
// has at least the setter
}
}
推荐阅读
- android - 有没有办法在 Android 中使用 Proguard 来掩盖活动?
- java - 可以使用 X509EncodedKeySpec 在 java 中加载公钥,但无法使用 openssl 解析它
- visual-studio - 在团队服务的冲刺期间获得工作时间
- vb.net - IDbDataParameter - 定义 Oracle Clob
- angular - Angular 4为同一组件创建不同的语言路径路径
- javascript - 转换的钩子一旦被销毁并回调就会产生问题
- java - 迭代时抛出 IOException
- ios - 使用 fastlane,我如何将一组本地化屏幕截图路由到两个不同的应用商店
- python - 如何解析在python中实时编写的JSON文件?
- javascript - 使用 JavaScript 从 AWS S3 读取 JSON