Как заставить веб-службу использовать фиксированный номер порта при использовании сервера разработки Visual Studio?

#c# #asp.net #web-services

#c# #asp.net #веб-службы

Вопрос:

У меня есть asp.net веб-сайт и приложение Windows form.

Местоположение моего веб-сервиса:http://localhost:12312/MyWebSiteFolder/WSFile.asmx

Проблема в том, что номер порта продолжает меняться, если я снова открою решение, оно изменится на что-то другое:

http://localhost:11122/MyWebSiteFolder/WSFile.asmx

Есть ли способ, чтобы мне не приходилось обновлять местоположение файла в моем приложении Windows form каждый раз, когда я повторно открываю решение веб-сайта?

Комментарии:

1. Какую версию Visual Studio вы используете?

Ответ №1:

(предполагается, что Visual Studio 2010)

На вкладке Веб свойств проекта измените параметр «Автоматическое назначение порта» на «Определенный порт» и введите порт, который вы хотите использовать всегда. введите описание изображения здесь

В качестве альтернативы, если возможно, вы можете выбрать вариант использования вашего локального сервера IIS.

Обновить:

Если вы используете проект «Веб-сайт» вместо «Веб-приложения», параметр находится в окне свойств проекта вместо диалогового окна свойств. Обратите внимание на опцию «Использовать динамические порты» здесь: введите описание изображения здесь

Комментарии:

1. Хммм, я знаю, что свойства существуют в Windows form, но, похоже, я не могу найти их на своем веб-сайте

2. Какую версию Visual Studio вы используете?

3. Пользовательский интерфейс, который я показываю, предназначен для проекта «Веб-приложение»; является ли ваш проект «веб-сайтом»?

4. Смотрите мое обновление; эта опция по-прежнему доступна, только в другом месте.

Ответ №2:

Как выглядит ваше веб-приложение в обозревателе решений — показывает ли оно

 <drive>:<some directory>
  

или
отображается ли имя вашего веб-приложения без пути.
или
показывает ли это http:/// <something>

В случае 1 вы должны иметь возможность видеть свойства. Но вы не получите этого для остальных

Комментарии:

1. я имею в виду ввести <дискamp; >: < имя каталога >