System.Reflection.MemberTypes 在 DNX 5.0 中去了哪里?

Where did System.Reflection.MemberTypes go in DNX 5.0?

.net 4.5 有。 它在 DNXCore v5 中的什么位置?

我的具体错误信息是: DNXCore,Version=v5.0 error CS0103: The name 'MemberTypes' does not exist in the current context.

在以前的 .nets 中,它是 System.Reflection 上的 Enum,并且是 obj.GetType().GetMember(memberName).MemberType(字段、属性 等)[=21= 的结果]


编辑:

这就是我正在做的事情:

using System.Linq;
using System.Reflection;

    internal static object Send(object obj, string callableName, object[] parameters = null)
    {
        var info = InfoFor(obj, callableName);
        return ValueFor(obj, info);
    }

其中 InfoFor returns MethodInfoPropertyInfo 或任何其他匹配 callableName

和下面的 ValueFor(试图使用 MemberTypes 的地方)

  private static object ValueFor(object obj, dynamic member)
        {
            object value = null;

            if (member != null)
            {
                switch ((System.Reflection.MemberTypes)member.MemberType)
                {
                    case MemberTypes.Field:
                        value = ((FieldInfo)member).GetValue(obj);
                        break;
                    case MemberTypes.Property:
                        value = ((PropertyInfo)member).GetValue(obj, null);
                        break;
                   ...

看起来(至少现在)this is the recommended way to achieve the same functionality.

FieldInfo field = member as FieldInfo;
if (field != null)
   return field.GetValue(obj);
PropertyInfo property member as PropertyInfo;
if (property != null)
   return property.GetValue(obj, null);