Динамическое добавление Endpoint [WCF]
От: Аноним  
Дата: 18.12.13 13:43
Оценка:
Здравствуйте! Подскажите пожалуйста как можно после того как ServiceHost вызвал метод Open добавить новую оконечную точку???
Схематично что то такого:

ServiceHost server = new ServiceHost(typeof(Contract), new Uri("net.tcp://<IP>:<Port>"));
server.Open();
// и тут добавляем оконечную точку
// server.<какой-то метод>(typeof(IContract), new NetTcpBinding(SecurityMode.None), "123456");
// в Итоге имеем адрес "net.tcp://<IP>:<Port>/123456" для контракта IContract


пробовал SetEndpointAddress, но что ли не те параметры ему передал либо это не совсем то. Во всяком случае присоединиться не получилось

Буду благодарен примерчику решению такой задачи
Re: Динамическое добавление Endpoint [WCF]
От: Sharov Россия  
Дата: 18.12.13 15:08
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте! Подскажите пожалуйста как можно после того как ServiceHost вызвал метод Open добавить новую оконечную точку???


Похоже что никак. Вот тут ответ на немного другой вопрос:

But in both cases — server and client — you have to pick before
actually creating the service host or the proxy client.
Once created, these are immutable — you cannot tweak them once they're up and running.


Вот еще может быть полезным...
Кодом людям нужно помогать!
Re[2]: Динамическое добавление Endpoint [WCF]
От: Аноним  
Дата: 18.12.13 17:21
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Похоже что никак.


Странно. Если я не ошибаюсь то многие сайты для того чтобы пользователю можно было изменить свой забытый пароль генерируется длинная адресная строка заходя на которую он может задать новый пароль. Если не ошибаюсь такую технологию использует даже Microsoft. Хотя с другой стороны мы имеем .NET 4.5 в которой WCF такую штуку не поддерживает — парадокс какой-то
Может быть все таки это сделать как то можно?
Re[3]: Динамическое добавление Endpoint [WCF]
От: Shopen Россия  
Дата: 18.12.13 17:25
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Sharov, Вы писали:


S>>Похоже что никак.


А>Странно. Если я не ошибаюсь то многие сайты для того чтобы пользователю можно было изменить свой забытый пароль генерируется длинная адресная строка заходя на которую он может задать новый пароль. Если не ошибаюсь такую технологию использует даже Microsoft. Хотя с другой стороны мы имеем .NET 4.5 в которой WCF такую штуку не поддерживает — парадокс какой-то

А>Может быть все таки это сделать как то можно?

а как вообще все описаное выше связано с ендпоинтами и wcf?
Re[4]: Динамическое добавление Endpoint [WCF]
От: Аноним  
Дата: 18.12.13 17:44
Оценка:
Здравствуйте, Shopen, Вы писали:

S>а как вообще все описаное выше связано с ендпоинтами и wcf?


Честно я думал так:
1) пользователь забывший пароль вводит свой почтовый адрес
2) сервер генерирует для этого пользователя адресную строку(как я понимаю как раз этот ендпоинт, т.е. базовый адрес + генерируемая строка) и отсылает её на указанную почту
3) пользователь заходит по этой строке на страничку и устанавливает новый пароль
Ну как то так...
Как раз я по такой задачи и поднял топик. Возможно в действительности такое делается несколько по другому... поправьте меня если что
Re[5]: Динамическое добавление Endpoint [WCF]
От: Sharov Россия  
Дата: 18.12.13 18:06
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Честно я думал так:

А>1) пользователь забывший пароль вводит свой почтовый адрес
А>2) сервер генерирует для этого пользователя адресную строку(как я понимаю как раз этот ендпоинт, т.е. базовый адрес + генерируемая строка) и отсылает её на указанную почту
А>3) пользователь заходит по этой строке на страничку и устанавливает новый пароль
А>Ну как то так...
А>Как раз я по такой задачи и поднял топик. Возможно в действительности такое делается несколько по другому... поправьте меня если что

Эндпоинты тут не причем, возможно придется прочитать
их конфигурацию для чего-нибудь там... А так, все это решается на уровне бизнес логики,
т.е. интерфейса сервиса. Генерируется некоторая ссылка, результатом перехода по которой
служит вызов какого-нибудь метода сервиса, который либо сделает редирект, либо самостоятельно
вернет страницу сброса пароля (не важно какая реализация, идея ясна).
Пользователь меняет пароль, подтверждает и в результате
на сервисе опять должен отработать некоторый метод, который и сбросит пароль соотв. пользователя.
Кодом людям нужно помогать!
Re[6]: Динамическое добавление Endpoint [WCF]
От: Аноним  
Дата: 18.12.13 18:32
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Эндпоинты тут не причем, возможно придется прочитать

S>их конфигурацию для чего-нибудь там... А так, все это решается на уровне бизнес логики,
S>т.е. интерфейса сервиса. Генерируется некоторая ссылка, результатом перехода по которой
S>служит вызов какого-нибудь метода сервиса, который либо сделает редирект, либо самостоятельно
S>вернет страницу сброса пароля (не важно какая реализация, идея ясна).
S>Пользователь меняет пароль, подтверждает и в результате
S>на сервисе опять должен отработать некоторый метод, который и сбросит пароль соотв. пользователя.

А ссылка из себя представляет как <endpoint>/<Namespace>/<Name>/<MethodName>??? Т.е. чтобы сгенерировать ссылку сервису нужно генерировать контракт???
если endpoint у меня http://localhost:9079
    [ServiceContract(Namespace = "Exapmle", Name = "MyContract")]
    interface IMyContract
    {
        [OperationContract]
        string SendMessage(string msg);
    }


То адрес будет как http://localhost:9079/Exapmle/MyContract/SendMessage ????? Типа такого???
Re[7]: Динамическое добавление Endpoint [WCF]
От: QrystaL Украина  
Дата: 18.12.13 18:37
Оценка: +2
Здравствуйте, Аноним, Вы писали:

А>...


Судя по всему, вам нужен REST сервис
http://www.codeproject.com/Articles/105273/Create-RESTful-WCF-Service-API-Step-By-Step-Guide
Re[8]: Динамическое добавление Endpoint [WCF]
От: Аноним  
Дата: 18.12.13 18:43
Оценка:
Здравствуйте, QrystaL, Вы писали:

QL>Судя по всему, вам нужен REST сервис

QL>http://www.codeproject.com/Articles/105273/Create-RESTful-WCF-Service-API-Step-By-Step-Guide

Спасибо! Сейчас почитаю.

А как это все делается для привязки NetTcpBinding??? Есть ли пример?
Re[9]: Динамическое добавление Endpoint [WCF]
От: QrystaL Украина  
Дата: 18.12.13 18:51
Оценка:
Здравствуйте, Аноним, Вы писали:
А>А как это все делается для привязки NetTcpBinding??? Есть ли пример?

Если нужен именно NetTcpBinding, то здесь пишут, что придется использовать SOAP...
Re[9]: Динамическое добавление Endpoint [WCF]
От: Sharov Россия  
Дата: 18.12.13 19:30
Оценка:
Здравствуйте, Аноним, Вы писали:

А>А как это все делается для привязки NetTcpBinding??? Есть ли пример?


REST на NetTcpBinding не взлетит...
Кодом людям нужно помогать!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.