stephane.maillot@cactuscommerce.com



Hi,
I am very frustrated and cannot seem to figure out a problem.
I created a service (.svc) and when I try to browse it in IIS, I get the following error:

Operation 'ValidateUser' in contract 'ILoginService' uses a MessageContract that has SOAP headers. SOAP headers are not supported by the None MessageVersion.

I have no clue what is going on.

********************
[ServiceContract(
Namespace = "http://schemas.blab.blab",
Name = "ILoginService",
SessionMode = SessionMode.Allowed)]
public interface ILoginService
{
[FaultContract(typeof(DefaultFaultContract))]
[FaultContract(typeof(NullArgumentFaultContract))]
[OperationContract(IsTerminating = false,
IsInitiating = true,
IsOneWay = false,
AsyncPattern = false,
Action = "*",
ReplyAction = "*")]
LoginResponse ValidateUser(LoginRequest request);
}//ILoginService
********************
[MessageContract(WrapperName = "LoginRequest",
WrapperNamespace = "http://schemas.blab.blab")]
public class LoginRequest
{
#region Data Members
private CallingContext _messageContext = new CallingContext();
private LoginDetails _details = new LoginDetails();
#endregion//Data Members
#region Constructors
public LoginRequest()
{
}
#endregion//Constructors

#region Public Properties
[MessageHeader()]
public CallingContext MessageContext // defined as DataContract
{
get { return _messageContext; }
set { _messageContext = value; }
}
[MessageBodyMember()]
public LoginDetails LoginDetails // defined as DataContract
{
get { return this._details; }
set { this._details = value; }
}
#endregion//Public Properties
}//class LoginRequest

********************
[MessageContract(WrapperName = "LoginResponse",
WrapperNamespace = "http://schemas.blab.blab")]
public class LoginResponse
{
#region Data Members
private bool _isValid;
#endregion//Data Members
#region Constructors
public LoginResponse()
{
}
#endregion//Constructors
#region Public Properties
[MessageBodyMember()]
public bool IsValid
{
get { return this._isValid; }
set { this._isValid = value; }
}
#endregion//Public Properties
}//class LoginResponse
********************
in the .svc project web.config I have ...
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="blab.blab.WCF.ServiceImplementation.LoginService_Behavior">
<!-- To receive exception details in faults for debugging purposes, set the value below to true.
Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<bindings>
<wsHttpBinding>
<binding name="LoginServiceBinding"
closeTimeout="00:10:00"
openTimeout="00:10:00"
receiveTimeout="00:10:00"
sendTimeout="00:10:00">
<readerQuotas maxDepth="32"
maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096"
maxNameTableCharCount="16384" />
</binding>
</wsHttpBinding>
</bindings>
<services>
<service
behaviorConfiguration="blab.blab.WCF.ServiceImplementation.LoginService_Behavior"
name="blab.blab.WCF.ServiceImplementation.LoginService">
<!-- Service Endpoints -->
<endpoint address=""
binding="wsHttpBinding"
bindingConfiguration="LoginServiceBinding"
name="ILoginService"
bindingNamespace="http://schemas.blab.blab"
contract="blab.blab.WCF.ServiceContracts.ILoginService"/>
</service>
</services>
</system.serviceModel>


********************

Can anyone tell me how to fix that error? As I have no clue. Is it an IIS issue, a web.config issue??
Using VS2008 and the projects are set to .NET 3.0 Framework.
Solution builds success.