中繼資料問題
.NET 遠端基礎結構需要適當的中繼資料來連接某個應用程式定義域中的物件與另一個定義域中的物件。任何情況下,用戶端應用程式定義域必須擁有預定使用之遠端物件的中繼資料。應記住的主要問題如下:
對於伺服器啟動的物件,包含型別的組件名稱在用戶端和伺服器上必須相同,且型別名稱也必須相同。這是因為型別識別是使用型別和組件名稱的組合來決定,包括組件版本和任何強式名稱資訊在內。
對於用戶端啟動的物件,包含型別的組件名稱在用戶端和伺服器上必須相同,且型別名稱也必須相同。此外,用戶端必須實際實作遠端型別,而且所有成員必須擁有與伺服器實作上的對應成員完全相同的實際簽章。
![]() |
---|
用戶端實作不需同於伺服器實作。如果您不要用戶端存取伺服器實作,可以建置符合上述要求的內建程式庫,但還包含擲回 NotSupportedException 例外狀況的 stubbed-out 成員。Soapsuds 工具 (Soapsuds.exe) 會使用 SOAP 序列化為用戶端執行這項作業。您可使用任何通道為任何已發行的 marshal-by-reference 型別執行這項作業。 |