1
當我爲我的服務創建一個代理時,一些額外的參數被添加爲XmlIgnoreAttribute。例如:如何檢測服務代理上的自動生成的方法參數?
接口方法合同聲明:
[OperationContract]
void AddToList(int integerToAdd);
方法實現:
public void AddToList(int integerToAdd) {
intList.Add(integerToAdd);
}
現在,這裏是這個方法實際上看起來的時候我動態生成的代理我的服務,如:
/// <remarks/>
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/IService1/AddToList", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
public void AddToList(int integerToAdd, [System.Xml.Serialization.XmlIgnoreAttribute()] bool integerToAddSpecified)
{
this.Invoke("AddToList", new object[] {integerToAdd, integerToAddSpecified});
}
如果我有這個參數的ParameterInfo對象,ho我可以檢查這個參數已被標記爲XmlIgnoreAttribute?
如果這不是檢查這些自動生成的參數的好方法,那麼是否有另一種(更好的)方法來檢查它們?
獎勵:是否會有非布爾類型生成並標記爲XmlIgnoreAttribute的情況?
我正在調用該方法,並且布爾值是我設置整數時需要設置爲true的必需參數,所以我想找到一種方法來檢測此類型的屬性並將其設置。謝謝。我在自定義屬性中發現了它,但是,這就是說,你有什麼關於獎金的問題嗎? * LOL *僅生成標記爲XmlIgnoreAttribute的布爾類型? – Alexandru
@亞歷山德魯這就是我在(2)'之後的答案中的意思。你可能會有更好的運氣,搜尋一些建立了svcutil的MS團隊或是某個知道某人的人,並給他們發郵件。我已經做了很多次了,如果你徹底的瞭解了它:D – gideon