Я пытаюсь настроить службу данных WCF для использования моего пользовательского UserNamePasswordValidator, он отлично работает для стандартных служб WCF; у меня проблема в следующем: в моем web.config я не могу указать конечную точку службы данных WCF, потому что она не реализует контракт, который я могу использовать. Увидеть ниже
<service behaviorConfiguration="GetHttpsIncludeFaults" name="WCFDataService">
<endpoint
address=""
binding="basicHttpBinding"
bindingConfiguration="BasicHTTP"
Contract="WHAT-GOES-HERE?"/>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
<behavior name="GetHttpsIncludeFaults">
<dataContractSerializer maxItemsInObjectGraph="204800" />
<serviceCredentials>
<userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="pjt.UPValidate, pjt"/>
</serviceCredentials>
<serviceMetadata httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
Для моих обычных служб WCF я просто выделяю интерфейс, реализуемый классом; с Data Services у меня такого интерфейса нет.
Если есть лучший способ настроить ServiceBehavior, я открыт для этого, это единственный способ, который я знаю, как это сделать.