xamarin 形式 android 运行时反射 GetMethods 始终为零?

xamarin forms android runtime reflection GetMethods always zero?

我对 Xamarin 表单中的接口的 GetMethods 有问题 android。 当我获取接口的方法列表时,我总是一无所获。 这个问题是当我调用类型的 GetMethods 时该类型在另一个项目中(不在 android 项目中)并且如果该类型在 android 项目中我没有任何问题来获取接口方法。 例如:

    [ServiceContract("AuthenticationService", InstanceType.SingleInstance)]
    public interface IAuthentication
    {
        MessageContract<(int Id, Guid password)> RegisterUser(UserInfo userInfo);
        MessageContract<int> Login(string userName, string password);
        MessageContract<Guid> ConfirmUserWithSMS(int userId, int randomNumber);
    }

var type = typeof(IAuthentication);
var methods = type.GetMethods();//return zero
var m = type.GetMethods(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);//return zero
var methods2 = type.GetTypeInfo().GetMethods();//return zero
var m2 = type.GetTypeInfo().GetMethods(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);//return zero
var methods3 = type.GetTypeInfo().DeclaredMethods.ToList();//return zero

几个小时后,当我将 Android 选项中的链接设置更改为 "None" 时,问题消失了: