VSProject2.AddWebReference(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Добавляет ссылку на веб-службу этого проекта. В папку веб-ссылок проекта добавляется новая вложенная папка ссылок на веб-службу. В этой новой папке содержится несколько других элементов проекта, относящихся к веб-службе. Метод возвращает объект ProjectItem, связанный с новой папкой веб-службы.
public:
EnvDTE::ProjectItem ^ AddWebReference(System::String ^ bstrUrl);
public:
EnvDTE::ProjectItem ^ AddWebReference(Platform::String ^ bstrUrl);
EnvDTE::ProjectItem AddWebReference(std::wstring const & bstrUrl);
[System.Runtime.InteropServices.DispId(7)]
public EnvDTE.ProjectItem AddWebReference (string bstrUrl);
[<System.Runtime.InteropServices.DispId(7)>]
abstract member AddWebReference : string -> EnvDTE.ProjectItem
Public Function AddWebReference (bstrUrl As String) As ProjectItem
Параметры
- bstrUrl
- String
Обязательный. Обычно это URL-адрес имени файла с расширением DISCO или VSDISCO.
Возвращаемое значение
Возвращает объект ProjectItem, являющийся новой папкой веб-ссылок.
Реализации
- Атрибуты
Примеры
В этом примере добавляется веб-служба Visual Basic в Visual C# проект или. Перед запуском этого образца замените bstrUrl параметр на http://ServerName/Application/myServiceName.asmx фактический URL-адрес. Чтобы запустить этот пример в качестве надстройки, см. статью как скомпилировать и запустить примеры кода объектной модели автоматизации.
[Visual Basic]
' Add-in code.
Imports VSLangProj
Imports VSLangProj80
Public Sub OnConnection(ByVal application As Object,_
ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
ByRef custom As Array) Implements IDTExtensibility2.OnConnection
applicationObject = CType(application, DTE2)
addInInstance = CType(addInInst, AddIn)
AddWebReferenceExample(applicationObject)
End Sub
Sub AddWebReferenceExample(ByVal dte As DTE2)
' This example assumes that the first project in the solution is
' a Visual Basic or C# project.
Dim aVSProject As VSProject2 = _
CType(applicationObject.Solution.Projects.Item(1).Object, _
VSProject2)
' The new project item is a folder.
Dim newFolder As ProjectItem
' Replace the sample URL with an actual URL.
newFolder = aVSProject.AddWebReference( _
"http://ServerName/Application/myServiceName.asmx")
' The new name of the folder appears in Solution Explorer.
newFolder.Name = "NewName"
' The ProjectItems collection for the folder is not empty.
MsgBox(newFolder.ProjectItems.Count.ToString())
End Sub
[C#]
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application, ext_ConnectMode
connectMode, object addInInst, ref Array custom)
{
applicationObject = (DTE2)application;
addInInstance = (AddIn)addInInst;
AddWebReferenceExample((DTE2)applicationObject);
}
public void AddWebReferenceExample(DTE2 dte)
{
// This example assumes that the first project in the solution is
// a Visual Basic or C# project.
VSProject2 aVSProject =
((VSProject2)( applicationObject.Solution.Projects.Item(1).Object));
// The new project item is a folder.
ProjectItem newFolder = null;
// Replace the sample URL with an actual URL.
newFolder = aVSProject.AddWebReference
("http://ServerName/Application/myServiceName.asmx ");
// The new name of the folder appears in Solution Explorer.
newFolder.Name = "NewName";
// The ProjectItems collection for the folder is not empty.
MessageBox.Show("Number of items in the Web Reference folder: \n"
+ newFolder.ProjectItems.Count.ToString());
}
Комментарии
Если WebReferencesFolder имеет значение Nothing ( null ссылка), то ProjectItem создается папка для веб-ссылок проекта и WebReferencesFolder задается.
При создании веб-ссылки на веб-службу в ProjectItem коллекцию проекта добавляется новый тип папки, ProjectItems . Этот новый ProjectItem содержит, в своем ProjectItems свойстве, отдельные элементы, которые составляют спецификацию веб-ссылки. В следующей таблице описаны четыре типа элементов, входящих в спецификацию веб-ссылок.
| Элемент | Назначение |
|---|---|
| Файл отображения (ссылка. Map) | Этот XML-файл сопоставляет URL-адреса с расположением локального кэшированного файла. В нем содержится список файлов обнаружения и контрактов служб для веб-службы. |
| Файлы контрактов службы (WSDL) | Эти файлы SOAP указывают интерфейс веб-службы. В папке веб-ссылок может быть несколько файлов контрактов. |
| Файлы определения схемы XML (. xsd) | Эти файлы содержат определения схемы XML для веб-службы. В папке веб-ссылок может быть несколько файлов схемы. |
| Файл обнаружения (. DISCO или. всдиско) | Этот XML-файл содержит ссылки на другие ресурсы, описывающие веб-службу. |