VSProject2.AddWebReference メソッド (String)
プロジェクトに Web サービスへの参照を追加します。新しい Web サービス参照サブフォルダーは、プロジェクトの [Web References] フォルダーに追加されます。新しいフォルダーには、Web サービスに関連するほかの複数のプロジェクト項目が格納されます。このメソッドは、新しい Web サービス フォルダーに関連付けられた ProjectItem オブジェクトを返します。
名前空間: VSLangProj80
アセンブリ: VSLangProj80 (VSLangProj80.dll 内)
構文
'宣言
Function AddWebReference ( _
bstrUrl As String _
) As ProjectItem
ProjectItem AddWebReference(
string bstrUrl
)
ProjectItem^ AddWebReference(
[InAttribute] String^ bstrUrl
)
abstract AddWebReference :
bstrUrl:string -> ProjectItem
function AddWebReference(
bstrUrl : String
) : ProjectItem
パラメーター
- bstrUrl
型 : System.String
必ず指定します。通常、.disco または .vsdisco の拡張子を持つファイル名を URL 形式で指定します。
戻り値
型 : EnvDTE.ProjectItem
新しい Web Reference フォルダーである ProjectItem オブジェクトを返します。
解説
WebReferencesFolder が Nothing (nullnull 参照 (Visual Basic では Nothing) 参照) の場合、プロジェクトの Web References フォルダーの ProjectItem が作成され、WebReferencesFolder が設定されます。
Web サービスへの Web 参照が作成されると、新しいフォルダーの種類である ProjectItem がプロジェクトの ProjectItems コレクションに追加されます。この新しい ProjectItem の ProjectItems プロパティには、Web 参照定義を構成する項目が格納されます。Web 参照定義を構成する 4 種類の項目を次の表で説明します。
項目 |
目的 |
---|---|
マップ ファイル (Reference.map) |
この XML ファイルで、URLs とローカルでキャッシュされているファイルとの割り当てを行います。Web サービスの検索ファイルとサービス コントラクト ファイルをリストします。 |
サービス コントラクト ファイル (.wsdl) |
Web サービスのインターフェイスを指定する SOAP ファイルです。Web Reference フォルダーには複数のコントラクト ファイルを格納できます。 |
XML スキーマ定義ファイル (.xsd) |
Web サービスの XML スキーマ定義を格納するファイルです。Web Reference フォルダーには複数のスキーマ ファイルを格納できます。 |
検索ファイル (.disco または .vsdisco) |
Web サービスを表している他のリソースへのリンクを格納する XML ファイルです。 |
例
この例では、Visual Basic または Visual C# プロジェクトに Web サービスを追加します。この例を実行する前に、bstrUrl パラメーター https://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( _
"https://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
("https://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());
}
.NET Framework セキュリティ
- 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。