0
這是我的第一個Web服務,我試圖按照教程上的Web服務創建一個自定義的驗證,我堅持,因爲我得到這個錯誤:WCF Web服務不能在Web Access服務名稱配置
「WcfOrderingService.Services.AuthenticationTokenService」值根據其數據類型「serviceNameType」無效 - 枚舉約束失敗。
web配置:
<service name ="WcfOrderingService.Services.AuthenticationTokenService"
behaviorConfiguration="ServiceBehaviourHttp">
<endpoint address="" behaviorConfiguration="WcfOrderingService.AuthenticationTokenServiceAspNetAjaxBehavior"
binding="webHttpBinding" contract="WcfOrderingService.Services.AuthenticationTokenService.Authenticate" />
</service>
.svc.cs -
namespace WcfOrderingService.Services
{
[ServiceContract]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class AuthenticationTokenService
{
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
[OperationContract]
public string Authenticate(Credentials creds)
{
ICredentialsValidator validator = new CredentialsValidator();
if (validator.IsValid(creds))
return new TokenBuilder().Build(creds);
throw new InvalidCredentialException("Invalid credentials");
}
}
}
我已經試過我在網上找到的大多數事情,服務名稱等的變化,但無法找到一個答案。
在此先感謝。
謝謝,但如果我甚至開始了一個全新的WCF服務應用程序項目,然後添加一個WCF服務(支持Ajax)服務 - 它給了我同樣的錯誤。 –
啊,我認爲配置不正確。當您將端點的合同屬性更改爲WcfOrderingService.Services.AuthenticationTokenService時,它會起作用嗎? –
它不起作用intellisense也沒有選擇它,默認的service1雖然。 –