相关疑难解决方法(0)

未正确配置基本HTTP绑定

我已经使用wsHTTPBinding配置了WCF服务,但即使这样我也得到了错误

Contract requires Session, but Binding 'BasicHttpBinding' doesn't support it or isn't configured properly to support it.
Run Code Online (Sandbox Code Playgroud)

这是服务合同定义

<ServiceContract(SessionMode:=SessionMode.Required)>
Public Interface IPrivateService
Run Code Online (Sandbox Code Playgroud)

这是服务实现定义

<ServiceBehavior(InstanceContextMode:=InstanceContextMode.PerSession)>
Public Class PrivateService
    Implements IPrivateService
Run Code Online (Sandbox Code Playgroud)

这是配置设置

<services>
    <service behaviorConfiguration="behaviorAction" name="Viking.Service.PrivateService">
            <endpoint address="RequiredService" binding="wsHttpBinding" bindingConfiguration="bindingAction" contract="Viking.Service.IPrivateService">
              <identity>
                <dns value="localhost"/>
              </identity>
            </endpoint>
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
          </service>
</services>
<bindings>
          <wsHttpBinding>
            <binding name="bindingAction" transactionFlow="false" sendTimeout="00:30:00" receiveTimeout="00:30:00">
              <reliableSession enabled="true"/>
            </binding>
          </wsHttpBinding>
</bindings>
Run Code Online (Sandbox Code Playgroud)

真正感谢任何关于这个问题的建议.

wcf wcf-4

6
推荐指数
1
解决办法
1万
查看次数

为什么WCF服务每个请求都返回错误的值?

我有以下简单的WCF库,它是在Visual Studio 2008上开发的.
当运行调用此wcf服务的WCFTestClinet/javascript(使用SOAP)时,我得到以下场景的错误值:
1.GetNumber - > output:"您的号码是0"
2.SetNumber - >无输出
3. GetNumber - >输出:"你的号码是0" 而不是输出:"你的号码是8"!!!
任何人都可以解释为什么会发生这种情况,我该如何解决?
谢谢

public class Service1 : IService1
    {
        private int Number;

        public string GetData(int value)
        {
            return string.Format("You entered: {0}", value);
        }

        public CompositeType GetDataUsingDataContract(CompositeType composite)
        {
            if (composite.BoolValue)
            {
                composite.StringValue += "Suffix";
            }
            return composite;
        }

        public string GetNumber()
        {
            return string.Format("Your number is : {0}", Number);
        }

        public void SetNumber()
        {
            Number = 8;
        }
    }
Run Code Online (Sandbox Code Playgroud)

javascript c# wcf soap visual-studio-2008

0
推荐指数
1
解决办法
1083
查看次数

标签 统计

wcf ×2

c# ×1

javascript ×1

soap ×1

visual-studio-2008 ×1

wcf-4 ×1