WCF: Metadata contains a reference that cannot be resolved: 'net.tcp://localhost:8733/'

268
23 октября 2017, 23:10

Просле добавления serviceAuthorization net.tcp binding не работает. При добавлении Service Reverence выдает ошибку: WCF: Metadata contains a reference that cannot be resolved: 'net.tcp://localhost:8733/'.

Config файл:

<system.serviceModel>
   <services>
      <service behaviorConfiguration="mexBehavior" name="ChartServices.Service.ChartManagerService">
         <endpoint address="ChartServices" binding="wsHttpBinding" bindingConfiguration="wsBindingConfig" name="wsBinding_UserService" contract="ChartServices.Services_Contract.IUserService" />
         <endpoint address="ChartServices" binding="netTcpBinding" bindingConfiguration="netTcpBindingConfig" name="netTcp_UserService" contract="ChartServices.Services_Contract.IUserService" />
         <endpoint address="mex" binding="mexTcpBinding" name="mexTcp" contract="IMetadataExchange" />
         <endpoint address="mex" binding="mexHttpBinding" name="mexHttp" contract="IMetadataExchange" />
         <host>
            <baseAddresses>
               <add baseAddress="net.tcp://localhost:8733/" />
               <add baseAddress="http://localhost:8734/" />
            </baseAddresses>
         </host>
      </service>
   </services>
   <bindings>
      <wsHttpBinding>
         <binding name="wsBindingConfig">
            <security mode="Message">
               <message clientCredentialType="UserName" />
            </security>
         </binding>
      </wsHttpBinding>
      <netTcpBinding>
         <binding name="netTcpBindingConfig">
            <security mode="Message">
               <message clientCredentialType="UserName" />
            </security>
         </binding>
      </netTcpBinding>
   </bindings>
   <behaviors>
      <serviceBehaviors>
         <behavior name="mexBehavior">
            <serviceMetadata httpGetEnabled="True" httpsGetEnabled="True" />
            <serviceDebug includeExceptionDetailInFaults="true" />
            <serviceCredentials>
               <clientCertificate>
                  <authentication certificateValidationMode="PeerTrust" />
               </clientCertificate>
               <serviceCertificate findValue="RootCATest" storeLocation="LocalMachine" storeName="My" x509FindType="FindByIssuerName" />
               <userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="ChartServices.CustomUserNameValidator, ChartServices" />
            </serviceCredentials>
            <serviceAuthorization principalPermissionMode="Custom" serviceAuthorizationManagerType="ChartServices.MyServiceAuthorizationManager, ChartServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">
               <authorizationPolicies>
                  <add policyType="ChartServices.AuthorizationPolicy, ChartServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
               </authorizationPolicies>
            </serviceAuthorization>
         </behavior>
      </serviceBehaviors>
   </behaviors>
</system.serviceModel>

Никак не могу понять в чем проблема. Без serviceAuthorization все работает.

Answer 1

Насколько я понял это проблема Visual Studio 2017 https://github.com/dotnet/wcf/issues/1741

READ ALSO
Задание значения модели в mvc

Задание значения модели в mvc

Не получается задать значение полям модели в MVC aspnet

297
Консоль в оконном приложении

Консоль в оконном приложении

Каким образом в Visual Studio в окне приложения на C# можно создать консоль (для выполнения запросов)? Или можно только создать консоль поверх окна?...

205
Разделить строку на массив слов

Разделить строку на массив слов

Нужно разделить строку на массив слов, где в качестве разделителей, могут быть любые символы, кроме букв и символов! ? ; : ( )

354