我有一组属性,其中一些属性有private
个setter,其中一些有internal
setter。有没有办法在运行时我可以检查属性的setter是否为internal
?
答案 0 :(得分:5)
您可以使用反射获取此信息:
var myType = obj.GetType();
var setMethod = myType.GetProperty(propertyName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public)
.GetSetMethod(true);
bool isInternalSetter = setMethod != null && setMethod.IsAssembly;