2010-11-22 77 views
3

是否有可能在Sharepoint中創建與提供者有多個連接的連接Web部件。Sharepoint與Web部件的多個連接

例如, Web部件A和B是提供者,Web部件C是消費者。

A是提供商對消費者C和B也是提供商對消費者C.

感謝。

Rhys, 我試過這個,似乎沒有工作。消費者Web部件僅適用於所設置的最後一個提供商。

[ConnectionConsumer("KeywordsConsumer", "KeywordsID", AllowsMultipleConnections=true)] 
public void ProviderReceiver1(ICommunicationChannel p) 
{ 
     provider = p; 
} 

[ConnectionConsumer("NewEmployeeConsumer", "ID", AllowsMultipleConnections=true)] 
public void ProviderReceiver2(ICommunicationChannel p) 
{ 
    provider = p; 
} 

回答

2

我發送數據相信問題是您使用相同的變量(供應商)來存儲這兩個參考 - 因此一個將取代另一個。

使用

private ICommunicationChannel _keywordsProvider; 
private ICommunicationChannel _newEmployeeProvider; 

[ConnectionConsumer("KeywordsConsumer", "KeywordsID", AllowsMultipleConnections=true)] 
public void ProviderReceiver1(ICommunicationChannel p) 
{ 
    _keywordsProvider = p; 
} 

[ConnectionConsumer("NewEmployeeConsumer", "ID", AllowsMultipleConnections=true)] 
public void ProviderReceiver2(ICommunicationChannel p) 
{ 
    _newEmployeeProvider = p; 
} 
+0

是的,就是這樣。謝謝!還有一個問題,在這種情況下它甚至需要AllowsMultipleConnections屬性嗎? – devXen 2010-11-23 18:10:34

1

是的,在Web部分C允許多個接收器。

如果你正在寫自己的Web部件,您可以定義兩個接收器的Web部件C,然後配置Web部件將數據發送到接收器1和類似網頁B部分爲接收器2

+0

你是正確的 - 比如內置的列表視圖Web部件(LVWP)將接受消費者(Web部件C)在2010多個連接 - 但在2007年它僅接受單一連接 – Ryan 2010-11-23 09:39:50