Interfejs VSWebSite
Zawiera właściwości i metody dla projektu witryny sieci Web.
Przestrzeń nazw: VsWebSite
Zestaw: VsWebSite.Interop (w VsWebSite.Interop.dll)
Składnia
'Deklaracja
<GuidAttribute("70758CA4-91F8-46AD-80A7-73BC21BAE68B")> _
Public Interface VSWebSite
[GuidAttribute("70758CA4-91F8-46AD-80A7-73BC21BAE68B")]
public interface VSWebSite
[GuidAttribute(L"70758CA4-91F8-46AD-80A7-73BC21BAE68B")]
public interface class VSWebSite
[<GuidAttribute("70758CA4-91F8-46AD-80A7-73BC21BAE68B")>]
type VSWebSite = interface end
public interface VSWebSite
Typ VSWebSite uwidacznia następujące elementy członkowskie.
Właściwości
Nazwa | Opis | |
---|---|---|
CodeFolders | Zwraca kolekcję folderów, które są skonfigurowane jako kod folderów witryny sieci Web. | |
DTE | Pobiera odwołanie do DTE2 obiekt, który zawiera projekt witryny sieci Web. | |
Project | Pobiera odwołanie do tej witryny sieci Web jako Project obiektu. | |
References | Pobiera AssemblyReferences obiektu zawierającego odwołania do zestawów i projektów dla bieżącej witryny sieci Web. | |
TemplatePath | Pobiera pełną ścieżkę i nazwę folderu, który zawiera szablony dla elementów witryny sieci Web. | |
URL | Pobiera adres URL, który został użyty do otwarcia witryny sieci Web. | |
UserTemplatePath | Pobiera ścieżkę do folderu szablonów użytkownika dla nowych elementów projektu. | |
VSWebSiteEvents | Pobiera VSWebSiteEvents obiektu dla witryny sieci Web, która może służyć do dodawania obsługi zdarzeń. | |
WebReferences | Pobiera WebReferences obiektu zawierającego odwołania do usług sieci Web spożywanych przez witryny sieci Web. | |
WebServices | Pobiera WebServices obiektu zawierającego zbiór usług sieci Web, które są udostępniane przez tę witrynę sieci Web. |
Początek
Metody
Nazwa | Opis | |
---|---|---|
AddFromTemplate | Tworzy nowy ProjectItem w projekcie witryny sieci Web. | |
EnsureServerRunning | Uruchamia program ASP.NET Development Server, jeśli to konieczne i zwraca adres URL dla witryny sieci Web. | |
GetUniqueFilename | Zwraca nazwę pliku, który jest unikatowy w określonym folderze, używając określonego katalogu głównego nazwa i rozszerzenie. | |
PreCompileWeb | Kompiluje witryny sieci Web i zapisuje skompilowany dane wyjściowe do określonego folderu. | |
Refresh | Odświeża wyświetlanie konta do zmiany wprowadzone w witrynie sieci Web poza programu Visual Studio. | |
WaitUntilReady | Blokuje wszystkie wywołania metody do momentu tła procesy zostały zakończone, wykonywanie. |
Początek
Uwagi
Użyj VSWebSite interfejsu do manipulowania projektu witryny sieci Web, z albo makro lub dodatek do programu Visual Studio.
Oprócz właściwości i metod w tej klasie, istnieją więcej właściwości dla witryny sieci Web projektów dostępne za pomocą WebSiteProperties klasy.
[!UWAGA]
Funkcji tej klasy jest dostępna w wersji programu Visual Studio, począwszy od programu Visual Studio 2005.Nie jest dostępny w Visual Web Developer Express Edition.
Przykłady
Poniższy przykład pokazuje, jak używania dodatku w celu interakcji z projektu programu Visual Studio sieci Web witryny.Dodaj w używa obsługi zdarzeń do zapisu w dzienniku zdarzeń, gdy albo odwołanie do zestawu lub odwołania sieci Web do usługi sieci Web jest dodawany do projektu.Ponadto zapisuje podsumowanie każdego projektu witryny sieci Web do pliku tekstowego, gdy roztwór jest zamknięty.
Aby uruchomić w przykładzie, należy użyć Porady: tworzenie dodatku do tworzenia projektu w i cały kod w wynikowym pliku Connect.cs zastąpić przykładowy kod.Należy również utworzyć odwołanie do zestawu VsWebSite.Interop.
[C#]
using System;
using System.IO;
using System.Collections;
using System.Diagnostics;
using Extensibility;
using EnvDTE;
using EnvDTE80;
using VsWebSite;
// The object for implementing an Add-in.
public class Connect : IDTExtensibility2
{
private DTE2 _applicationObject;
private AddIn _addInInstance;
// Implements the constructor for the Add-in object.
// Created by the Add-In Wizard
public Connect()
{
}
// Event method created by the Add-In Wizard.
// Occurs when the Add-In connects with the application.
public void OnConnection(object application, ext_ConnectMode
connectMode, object addInInst, ref Array custom)
{
_applicationObject = (DTE2)application;
_addInInstance = (AddIn)addInInst;
// Attach Solution event handlers
_applicationObject.DTE.Events.SolutionEvents.Opened
+= new _dispSolutionEvents_OpenedEventHandler
(SolutionEvents_Opened);
_applicationObject.DTE.Events.SolutionEvents.QueryCloseSolution
+= new _dispSolutionEvents_QueryCloseSolutionEventHandler
(SolutionEvents_QueryCloseSolution);
}
// Custom event method that occurs before a solution is closed.
private void SolutionEvents_QueryCloseSolution(ref bool fCancel)
{
foreach (Project proj in _applicationObject.Solution.Projects)
{
// Make sure background compilation is finished
((VSWebSite)proj.Object).WaitUntilReady();
System.Text.StringBuilder strBldr =
new System.Text.StringBuilder();
strBldr.AppendLine("Summary for Web Site: "
+ ((VSWebSite)proj.Object).URL);
strBldr.AppendLine("Solution: "
+ _applicationObject.Solution.FullName);
strBldr.AppendLine("Web References:");
foreach (WebReference wref in
((VSWebSite)proj.Object).WebReferences)
strBldr.AppendLine(" " + wref.Namespace);
strBldr.AppendLine("Assembly References:");
foreach (AssemblyReference aref in
((VSWebSite)proj.Object).References)
strBldr.AppendLine(" " + aref.Name);
// list the files?
((VSWebSite)proj.Object).VSWebSiteEvents.WebReferencesEvents.WebReferenceAdded
-= WebRefEvents_WebRefAdded;
string strBody = strBldr.ToString();
// Save the summary as a text file in the Web site.
string fName = _applicationObject.FullName;
fName = fName.Substring(0, fName.Length - 4);
fName += "." + ((VSWebSite)proj.Object).GetUniqueFilename
("/", "ProjectSummary", ".txt");
if (File.Exists(fName))
File.Delete(fName);
StreamWriter sw = File.CreateText(fName);
sw.Write(strBody);
sw.Close();
}
}
// Custom event method that occurs when a solution is opened.
private void SolutionEvents_Opened()
{
// When solution is opened, attach event handlers for projects
foreach (Project proj in _applicationObject.Solution.Projects)
{ // Only attach event handlers if it is a Web site
if (proj.Object is VSWebSite)
{
((VSWebSite)proj.Object).VSWebSiteEvents.WebReferencesEvents.WebReferenceAdded +=
new _dispWebReferencesEvents_WebReferenceAddedEventHandler
(WebRefEvents_WebRefAdded);
((VSWebSite)proj.Object).VSWebSiteEvents.AssemblyReferencesEvents.AssemblyReferenceAdded +=
new _dispAssemblyReferencesEvents_AssemblyReferenceAddedEventHandler
(AssemblyRefsEvents_AssemblyRefAdded);
}
}
}
// Custom event method that occurs when a Reference is added.
private void AssemblyRefsEvents_AssemblyRefAdded(AssemblyReference AssemblyRef)
{
EventLog appLog = new EventLog();
appLog.Source = "VSWSTest." + AssemblyRef.ContainingProject.Name;
appLog.WriteEntry("AssemblyReference added: " + AssemblyRef.Name);
}
// Custom event method that occurs when a Web Reference is added.
private void WebRefEvents_WebRefAdded(WebReference webRef)
{
EventLog appLog = new EventLog();
appLog.Source = "VSWSTest." + webRef.ContainingProject.Name;
appLog.WriteEntry("WebReference added: " + webRef.Namespace);
}
#region Required but unused event handlers
/// <summary>Implements the OnDisconnection method of the IDTExtensibility2 interface. Receives notification that the Add-in is being unloaded.</summary>
/// <param term='disconnectMode'>Describes how the Add-in is being unloaded.</param>
/// <param term='custom'>Array of parameters that are host application specific.</param>
/// <seealso class='IDTExtensibility2' />
public void OnDisconnection(ext_DisconnectMode disconnectMode, ref Array custom)
{
}
/// <summary>Implements the OnAddInsUpdate method of the IDTExtensibility2 interface. Receives notification when the collection of Add-ins has changed.</summary>
/// <param term='custom'>Array of parameters that are host application specific.</param>
/// <seealso class='IDTExtensibility2' />
public void OnAddInsUpdate(ref Array custom)
{
}
/// <summary>Implements the OnStartupComplete method of the IDTExtensibility2 interface. Receives notification that the host application has completed loading.</summary>
/// <param term='custom'>Array of parameters that are host application specific.</param>
/// <seealso class='IDTExtensibility2' />
public void OnStartupComplete(ref Array custom)
{
}
/// <summary>Implements the OnBeginShutdown method of the IDTExtensibility2 interface. Receives notification that the host application is being unloaded.</summary>
/// <param term='custom'>Array of parameters that are host application specific.</param>
/// <seealso class='IDTExtensibility2' />
public void OnBeginShutdown(ref Array custom)
{
}
#endregion
}
Zobacz też
Informacje
Inne zasoby
Odwołanie do automatyzacji i rozszerzalności