0

空である CookieContainer にアクセスしようとすると、ユニバーサル Windows アプリで WCF 認証サービスにログインしています。

Windows 8.1 アプリの同じコードは正常に動作します。

basicbindings に対して AllowCookies を true に設定しました。サービスは PCL に配置されているため、ユニバーサル Windows アプリで「サービス参照の追加」を直接使用しても使用できない CookieContainer プロパティを使用できます。

(UWP アプリ) メインページ

var binding = new BasicHttpBinding(BasicHttpSecurityMode.None);
binding.AllowCookies = true;

new ClassLibrary1.Class1().Login(binding);

(PCL) クラス1

public class Class1
{
    public void Login(BasicHttpBinding binding)
    {
        var Client = new ServiceReference1.AuthenticationServiceClient(binding, new EndpointAddress("*****.svc"));

        Client.LoginAsync("*****", "*****", null, false);

        Client.LoginCompleted += (sender, args) =>
        {
            if (args.Result)
            {
                CookieContainer CookieContainer = Client.CookieContainer;
                CookieCollection Cookies = CookieContainer.GetCookies(Client.Endpoint.Address.Uri);

                Cookie Cookie = Cookies[".ASPXAUTH"];
            }
        };
        }
    }
}
4

0 に答える 0