質問

WCFサービスのOperationContractでCookieを読むことは可能ですか?私は契約方法でCookie値を読み込もうとしていますが、常に空です。 .aspxページから同じCookieを読んだ場合、値は存在します。何か案は?

役に立ちましたか?

解決

どのようにホストしていますか? WCFはホスト中立になることを目的としています。つまり、IISの外でホストされている場合でも、サービスは機能する必要があります。ただし、あなたを助けるかもしれない互換性モードがあります。

<system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
</system.serviceModel>

デフォルト値はfalseで、httpcontext.currentなどのほとんどのASP.NET機能を無効にします。

他のヒント

basichttpbinding.allowcookiesプロパティ の最初に述べたように、これを修正することができます エンリコのブログ投稿 WCFで共有Cookieの管理 (参照 ここ)。投稿にはweb.configフラグメントが含まれています。

<system.ServiceModel>
    <bindings>
        <basicHttpBinding allowCookies="true">
    </bindings>
    <client>
        <endpoint address="http://localhost/myservice"
                  binding="basicHttpBinding"
                  contract="IMyService" />
    </client>
</system.ServiceModel>

しかし、それを使用するコードフラグメントはありません(ブログ投稿には、異なるWebサービスを持つ同じCookieを使用して、より複雑なソリューションのコードがあります)。

=======編集==========

またはおそらく偶数 AlowCookies = false

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top