Я пытаюсь настроить Службу данных 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
, я открыт для этого, это единственный способ, которым я знаю, как это сделать.