Dot-Net

命名參數和可選參數,以及 WCF

  • April 15, 2010

所以 .Net 4 添加了非常漂亮的命名參數和可選參數。我不需要製作盡可能多的 1 行重載方法。

這對 WCF 有效嗎?

由於這些是編譯器語義,我會說不。但是,您希望它們僅以以下方式工作。

在服務程式碼方面,所有程式碼都將接受預設參數。

在客戶端,我注意到 VS2010 上的“添加服務引用”工具不採用預設值並將它們添加到生成的代理中。所以你必須生成你自己的代理。

這樣,如果在客戶端合約實現中指定了預設值,則客戶端程式碼可以使用預設值。

我認為命名參數也是如此。

總而言之,是的,但是這些東西並沒有通過 WCF 進行。所發生的一切是客戶端代理必須將其作為適當的參數發送到通道工廠。

WSDL 不能描述可選參數,所以答案是“否”。

引用自:https://stackoverflow.com/questions/2649680