windows communication foundation (WCF) 服务将引发事件引用。
命名空间: Microsoft.VisualStudio.WCFReference.Interop
程序集: Microsoft.VisualStudio.WCFReference.Interop(在 Microsoft.VisualStudio.WCFReference.Interop.dll 中)
语法
声明
<GuidAttribute("729D5091-E77F-4D0B-B03A-2310AD58DDC2")> _
<InterfaceTypeAttribute()> _
Public Interface IVsWCFReferenceEvents
[GuidAttribute("729D5091-E77F-4D0B-B03A-2310AD58DDC2")]
[InterfaceTypeAttribute()]
public interface IVsWCFReferenceEvents
[GuidAttribute(L"729D5091-E77F-4D0B-B03A-2310AD58DDC2")]
[InterfaceTypeAttribute()]
public interface class IVsWCFReferenceEvents
[<GuidAttribute("729D5091-E77F-4D0B-B03A-2310AD58DDC2")>]
[<InterfaceTypeAttribute()>]
type IVsWCFReferenceEvents = interface end
public interface IVsWCFReferenceEvents
IVsWCFReferenceEvents 类型公开以下成员。
方法
名称 | 说明 | |
---|---|---|
![]() |
OnConfigurationChanged | 引发 ConfigurationChanged 事件。 |
![]() |
OnMetadataChanged | 引发 MetaDataChanged 事件。 |
![]() |
OnMetadataChanging | 引发 MetaDataChanged 事件。 |
![]() |
OnReferenceGroupCollectionChanged | 引发事件,新引用添加之后或现有引用被删除。 |
![]() |
OnReferenceGroupCollectionChanging | 引发事件,新引用添加之后或现有引用被删除。 |
![]() |
OnReferenceGroupPropertiesChanged | 引发事件随后引用的属性组 (包括名称、命名空间、代理生成选项和 URL) 特定的引用组更改。 |
![]() |
OnReferenceGroupPropertiesChanging | 引发事件之前引用的属性组 (包括名称、命名空间、代理生成选项和 URL) 特定的引用组更改。 |
页首
示例
下面的示例演示类处理 WCF 服务引用事件。
/// Listens to referenceGroup events and notifies the controller of the events.
class ReferenceEventsListener : WCF.IVsWCFReferenceEvents, IDisposable
{
private IExplorerController controller;
private WCF.IVsWCFReferenceManager referenceManager;
private uint cookie;
private bool hasCookie = false;
public ReferenceEventsListener(IExplorerController controller,
WCF.IVsWCFReferenceManager referenceManager)
{
this.controller = controller;
this.referenceManager = referenceManager;
referenceManager.AdviseWCFReferenceEvents(this, out cookie);
Debug.Assert(cookie != 0);
hasCookie = true;
}
void WCF.IVsWCFReferenceEvents.OnMetadataChanged
(WCF.IVsWCFReferenceGroup pReferenceGroup)
{
controller.Log(String.Format(CultureInfo.InvariantCulture,
Resources.LogEventFired, "IVsWCFReferenceEvents.OnMetadataChanged",
pReferenceGroup.GetName()));
controller.Update();
}
void WCF.IVsWCFReferenceEvents.OnMetadataChanging
(WCF.IVsWCFReferenceGroup pReferenceGroup)
{
controller.Log(String.Format(CultureInfo.InvariantCulture,
Resources.LogEventFired, "IVsWCFReferenceEvents.OnMetadataChanging",
pReferenceGroup.GetName()));
}
void WCF.IVsWCFReferenceEvents.OnReferenceGroupPropertiesChanged
(WCF.IVsWCFReferenceGroup pReferenceGroup)
{
controller.Log(String.Format(CultureInfo.InvariantCulture,
Resources.LogEventFired,
"IVsWCFReferenceEvents.OnReferenceGroupPropertiesChanged",
pReferenceGroup.GetName()));
controller.Update();
}
void WCF.IVsWCFReferenceEvents.OnReferenceGroupPropertiesChanging
(WCF.IVsWCFReferenceGroup pReferenceGroup)
{
controller.Log(String.Format(CultureInfo.InvariantCulture,
Resources.LogEventFired,\"IVsWCFReferenceEvents.
ReferenceGroupPropertiesChanging", pReferenceGroup.GetName()));
}
void WCF.IVsWCFReferenceEvents.OnConfigurationChanged()
{
controller.Log(String.Format(CultureInfo.InvariantCulture,
Resources.LogEventFiredGeneric,
"IVsWCFReferenceEvents.OnConfigurationChanged"));
controller.Update();
}
void WCF.IVsWCFReferenceEvents.OnReferenceGroupCollectionChanged()
{
controller.Log(String.Format(CultureInfo.InvariantCulture,
Resources.LogEventFiredGeneric,
"IVsWCFReferenceEvents.OnReferenceGroupCollectionChanged"));
controller.Update();
}
void WCF.IVsWCFReferenceEvents.OnReferenceGroupCollectionChanging()
{
controller.Log(String.Format(CultureInfo.InvariantCulture,
Resources.LogEventFiredGeneric,
"IVsWCFReferenceEvents.OnReferenceGroupCollectionChanging"));
}
}