Atributos de classe C # não acessíveis em Javascript

Quero tornar uma classe minha acessível em JavaScript por meio de um C # WebView-Control. Portanto, estou usando o método WebView.AddWebAllowedObject. No entanto, se eu atribuir um atributo, ele funcionará bem, mas se eu atribuir toda a classe para obter todos os atributos em js, todos os atributos (e métodos btw) serão "indefinidos". Eu tentei tudo o que encontrei no www. Veja o código em anexo:

        //The class I want to make accessible
        [AllowForWeb, ComVisible(true)]
        [MarshalingBehavior(MarshalingType.Agile)]
        public class DeviceInformation
        {
            public string IPAdress { get; private set; }

            public DeviceInformation()
            {
                IPAdress = GetIPAdress();
            }

            public string GetDeviceUUID()
            {
                EasClientDeviceInformation deviceinfo = new EasClientDeviceInformation();
                return deviceinfo.Id.ToString();
            }

            public string GetIPAdress()
            {
                List<string> ipAddresses = new List<string>();
                var hostnames = NetworkInformation.GetHostNames();
                foreach (var hn in hostnames)
                {
                    if (hn?.IPInformation != null && (hn.IPInformation.NetworkAdapter.IanaInterfaceType == 71 ||
                        hn.IPInformation.NetworkAdapter.IanaInterfaceType == 6))
                    {
                        string ipadress = hn.DisplayName;
                        return ipadress;
                    }
                }
                return string.Empty;
            }
        }

Aqui os objetos são inicializados.

DeviceInformation devinf = new DeviceInformation();
private void View_NavigationStarting(WebView sender, WebViewNavigationStartingEventArgs args)
    {
        if (args.Uri.Host == "")
        {
            //win_ipadress has an ipadress as value
            view.AddWebAllowedObject("win_ipadress", devinf.IPAdress);
            //deviceInformation is initialized as well but I have no access to its attributes
            view.AddWebAllowedObject("deviceInformation", devinf);
        }
    }

É assim que eu chamo em js:

else if ($.os.ie) {
                    myIpAdr = window.win_ipadress;
                    //Throws an exception because GetIPAdress() is "undefined"
                    myIpAdr = window.deviceInformation.GetIPAdress();
                }

Estou usando isso em um aplicativo universal do Windows. O Javascript e o Código HTML exibido na WebView já estão sendo usados para Android e iOS.

questionAnswers(1)

yourAnswerToTheQuestion