powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Несколько wcf сервисов в одном web.config
25 сообщений из 80, страница 3 из 4
Несколько wcf сервисов в одном web.config
    #39777545
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63это конфигурационный файл для сервисов .asmx. Самих сервисов 13 и все работет. 13 сервисов wcf и ngnix редиректит сам по любым адресам.
Подходит?
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777546
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
решение = solution
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777547
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63решение = solution1.скрин дай солюшена.
2. Дай адреса http где размещаются метаданные.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777556
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63решение = solutionили как я понял, конфиг не надо трогать. У каждого свой.
Просто веб сервер загружает два или сколько нужно сервиса а ля веб проекта а ля веб приложения.
ОК
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777557
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По порядку.
Solution (решение) в Visual Studio это группа проектов.

Второе
Код: xml
1.
2.
3.
4.
5.
6.
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:7777/Settings.svc"/>
          </baseAddresses>
        </host>



и

Код: xml
1.
2.
3.
4.
5.
6.
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:7777/UserManager.svc"/>
          </baseAddresses>
        </host>



Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<serviceBehaviors>
        <behavior name="SettingsBehavior">
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="true"/>
        </behavior>
        <behavior name="UserManagerBehavior">
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="true"/>
        </behavior>
      </serviceBehaviors>



А вообще давайте прервемся. А то ходим вокруг да около, а толку нет.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777562
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63А вообще давайте прервемся.первый раз на форуме? Прерывайся. Кто тебя заставляет. Топик публичный.
Не забудь опосля тему решением закрыть.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777613
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока ТС в отпуске обрисуем ТЗ:
Alexander63цель - объединить два или несколько сервисов одним конфигурационным файлом.
Причём сервисы по функционалу разные.
Т.е. мы имеем:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
//ПроектА
public interface IАпельсины
{...
//конфиг
<endpoint address="mex" binding="mexHttpBinding" contract="IАпельсины" />
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:7777/Апельсины.svc"/>
          </baseAddresses>
        </host>

//ПроектБ
public interface IВаленки
{...
//конфиг:
<endpoint address="mex" binding="mexHttpBinding" contract="IВаленки" />
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:7777/Валенки.svc"/>
          </baseAddresses>
        </host>



требуется каким то образом сделать один конфиг на 2 проекта не меняя сами проекты.
...
Цель конечно, такая в ТЗ не может быть, т.к. она не функциональная. Непонятно что мы получим хорошего по фунционалу.
Ну а реализация - я теряюсь.
Что касается раздела <serviceBehaviors>, то это относится только к одному сервису в конфиге. Это возможность нескольких поведений для ОДНОГО сервиса-проекта. Типа VIEW.
IMHO
Удачи аффтару!
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777735
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я нашел ошибку у себя.
Код: c#
1.
<%@ ServiceHost Language="C#" Debug="true" Service="SvcUserManager.UserManager" CodeBehind="UserManager.svc.cs" %>



Неверно был указан параметр Service. Вместо SvcUserManager.UserManager было SvcUserManager.IUserManager
Ниже привожу файл конфигурации для двух служб. Это так, на всякий случай, для недоверчивых.
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
<?xml version="1.0" encoding="utf-8"?>
<configuration>

  <connectionStrings>
    <add name="FbDataSource" connectionString="User=;Password=;Database=C:\zDatabases\Firebird\Core2\Core2.fdb;DataSource=localhost;Port=3050;Dialect=3;Charset=UTF8;Role=;"/>
  </connectionStrings>

  <appSettings>
    <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
  </appSettings>

  <system.web>
    <compilation debug="true" targetFramework="4.6.1" />
    <httpRuntime targetFramework="4.6.1"/>
  </system.web>

  <system.runtime.serialization>
    <dataContractSerializer>
      <declaredTypes>
        <add type="UserSettings, SvcSettingsData">
          <knownType type="BaseSettings, SvcSettingsData" />
        </add>
      </declaredTypes>
    </dataContractSerializer>
  </system.runtime.serialization>

  <system.serviceModel>

    <behaviors>
      <endpointBehaviors>
        <behavior name="Basic" />
        <behavior name="WebJson">
          <webHttp defaultOutgoingResponseFormat="Json" automaticFormatSelectionEnabled="false" faultExceptionEnabled="true" helpEnabled="true"/>
        </behavior>
        <behavior name="WebXML">
          <webHttp defaultOutgoingResponseFormat="Xml" automaticFormatSelectionEnabled="false" faultExceptionEnabled="true" helpEnabled="true"/>
        </behavior>
      </endpointBehaviors>
      <serviceBehaviors>
        <behavior name="SettingsBehavior">
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="true"/>          
        </behavior>
        <behavior name="UserManagerBehavior">
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>

    <bindings>
      <basicHttpBinding>
        <binding name="Basic" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:20:00" sendTimeout="00:20:00" maxBufferPoolSize="524288000" maxBufferSize="65536000" maxReceivedMessageSize="65536000">
          <readerQuotas maxDepth="65536000" maxStringContentLength="65536000" maxArrayLength="65536000" maxBytesPerRead="65536000" maxNameTableCharCount="65536000" />
        </binding>
      </basicHttpBinding>
      <webHttpBinding>
        <binding name="WebJson" crossDomainScriptAccessEnabled="True" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:20:00" sendTimeout="00:20:00" maxBufferPoolSize="524288000" maxBufferSize="65536000" maxReceivedMessageSize="65536000" >
          <readerQuotas maxDepth="65536000" maxStringContentLength="65536000" maxArrayLength="65536000" maxBytesPerRead="65536000" maxNameTableCharCount="65536000" />
        </binding>
        <binding name="WebXML" crossDomainScriptAccessEnabled="True" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:20:00" sendTimeout="00:20:00" maxBufferPoolSize="524288000" maxBufferSize="65536000" maxReceivedMessageSize="65536000" >
          <readerQuotas maxDepth="65536000" maxStringContentLength="65536000" maxArrayLength="65536000" maxBytesPerRead="65536000" maxNameTableCharCount="65536000" />
        </binding>
      </webHttpBinding>
    </bindings>

    <protocolMapping>
        <add binding="basicHttpsBinding" scheme="https" />
    </protocolMapping>  

    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />

    <services>
      <service name="SvcSettings.Settings" behaviorConfiguration="SettingsBehavior">
        <!-- конечная точка REST формат Json-->
        <endpoint address="json" behaviorConfiguration="WebJson" binding="webHttpBinding" bindingConfiguration="WebJson" name="WebJson" contract="SvcSettings.ISvcSettings" />
        <!-- конечная точка REST формат XML-->
        <endpoint address="xml" behaviorConfiguration="WebXML" binding="webHttpBinding" bindingConfiguration="WebXML" name="WebXML" contract="SvcSettings.ISvcSettings" />
        <!-- конечная точка SOAP -->
        <endpoint address="basic" binding="basicHttpBinding" behaviorConfiguration="Basic" bindingConfiguration="Basic" name="Basic" contract="SvcSettings.ISvcSettings" />
        <!-- конечная точка для чтения метаданных сервиса-->        
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
        <!--
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:7777/Settings.svc"/>
          </baseAddresses>
        </host>
        -->
      </service>

      <service name="SvcUserManager.UserManager" behaviorConfiguration="UserManagerBehavior">
         <!-- конечная точка REST формат Json-->
        <endpoint address="json" behaviorConfiguration="WebJson" binding="webHttpBinding" bindingConfiguration="WebJson" name="WebJson" contract="SvcUserManager.IUserManager" />
        <!-- конечная точка REST формат XML-->
        <endpoint address="xml" behaviorConfiguration="WebXML" binding="webHttpBinding" bindingConfiguration="WebXML" name="WebXML" contract="SvcUserManager.IUserManager" />
        <!-- конечная точка SOAP -->
        <endpoint address="basic" binding="basicHttpBinding" behaviorConfiguration="Basic" bindingConfiguration="Basic" name="Basic" contract="SvcUserManager.IUserManager" />
        <!-- конечная точка для чтения метаданных сервиса--> 
        <endpoint address="mex1" binding="mexHttpBinding" contract="IMetadataExchange" />
        <!--
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:7777/UserManager.svc"/>
          </baseAddresses>
        </host>
        -->
      </service>

    </services>

  </system.serviceModel>

  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
    <directoryBrowse enabled="true"/>
  </system.webServer>

</configuration>



Топик можно закрывать
Спасибо всем кто помог.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777743
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63Это так, на всякий случай, для недоверчивых.)))
Юмор люблю).
ТЗ выше верное?
Может мы не могли решить, так как ТЗ неверное?
В какой проект из двух этот конфиг?
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777745
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Этот конфиг для двух проектов Settings.svc и UserManager.svc соответственно. Эти файлы лежат в одной папке, рядом web.config. В папке bin лежат dll, в которых реализованы эти две службы. Вот и все. Выдают результаты в json, xml или soap-message. Кому как удобней. Надеюсь понятно объяснил.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777747
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно немного модифицировать этот конфиг, если вынести в отдельные файлы секции services, bindings и behaviors.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777748
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таким образом можно объединить сколь угодно служб. Надо только добавить соответствующие разделы в behaviors и services.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777783
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63Эти файлы лежат в одной папке, рядом web.config.тип проекта? Я для iis не делал.
Проект - новый - веб сайт?


Alexander63папке bin лежат dll, в которых реализованы эти две службыполучали каким типом проекта?
И как деплоится в линукс это дело без IIS?
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777795
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63Этот конфиг для двух проектов Settings.svc и UserManager.svc соответственно.прикольно.
Я называл два проекта это в терминах студии *. csproj.
А у вас два проекта это двай файла интефейсные контракта.
В терминах студии надеюсь два проекта?
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777797
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отвечаю по порядку

тип проекта - Приложение службы WCF (так в студии написано)

в линукс деплоится простым копированием, в корень виртуальной директории или сайта. В корень помещаются файлы с расширением svc и web.config. А в папку bin(в корне) помещаются dll-ки. Как то так.

Да на линуксе, как я писал выше mono и ngnix. Но как там все настроено - вопрос не ко мне. Это делал напарник.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777799
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да в терминах студии две службы это два проекта csproj
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777804
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63
Код: xml
1.
bindings

кстати, в 4.5 все параметры ушли в умолчания. Можно не писать.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777806
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, я читал об этом буквально сегодня. Но решил оставить для большей наглядности и понятности(для себя, но скорее больше для других, кто будет после).
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777809
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63В корень помещаются файлы с расширением svc и web.config.
Два проекта это два web.config. Каа в одну папку?
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777816
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. берем из двух проектов любой попавшийся основным и часть инфы перекидываем руками в него из второго.
Так?
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777825
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да именно так. В студии при отладке, каждый имеет свой кофиг, а при деплое ручками один делаем основным. И вуаля. Можем работать хоть через soap, хоть использовать rest. Соответственно и результаты будут в нужном формате.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777833
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander63,
Понял.
Руками конечно неудобно, но за вариант спасибо.
И спасибо за подтверждение что на линуксе работает. Ты первый кто подтвердил.
Кстати, на java тенденция избавлятся от web.config.
Спасибо за тред. Удачи!
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777843
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну java мы не пользуем. А вот на линуксе можно поиметь геморрой при обработке исключительных ситуаций. Этот вопрос я до конца еще не просек. Иногда все работает, а иногда на ровном месте грабли. Нужны какие то танцы с FaultException.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777844
Фотография Alexander63
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это предупреждение. Чтобы был готов к неожиданностям.
Удачи.
...
Рейтинг: 0 / 0
Несколько wcf сервисов в одном web.config
    #39777877
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Alexander63А вообще давайте прервемся.первый раз на форуме? Прерывайся. Кто тебя заставляет. Топик публичный.
Не забудь опосля тему решением закрыть.

солюшыном (Hresheniye = солюшын в Визуальной студии)
...
Рейтинг: 0 / 0
25 сообщений из 80, страница 3 из 4
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Несколько wcf сервисов в одном web.config
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]