मेरी सेवा अन्य विधियों के लिए काम करती है लेकिन जब मैं एक और जटिल संग्रह के साथ एक विधि का आह्वान करने का प्रयास करता हूं तो मुझे त्रुटि मिलती है (सेवा ट्रेस व्यूअर से)डब्ल्यूसीएफ त्रुटि 'पैरामीटर को क्रमबद्ध करने का प्रयास करते समय एक त्रुटि हुई ...'
'पैरामीटर http://tempuri.org/:GetDataEventSetResult क्रमबद्ध करने का प्रयास करते समय एक त्रुटि हुई। एक ही गलती है कि मैंने देखा है वर्ग परिभाषा को बदलने शामिल बारी करने के साथ सवाल http://schemas.datacontract.org/2004/07/MimosaServerLib 'की उम्मीद नहीं है ...'
उत्तर: InnerException संदेश 'टाइप' 'के साथ डेटा अनुबंध नाम' MimosaServerLib.DAInt DAInt था 'ProxyCreationEnabled' बंद करें लेकिन जिन वर्गों के साथ मैं काम कर रहा हूं (DataEventSet
, DAInt
) एक ऐसी फ़ाइल से आती है जो मुझे दिया गया xsd टूल का उपयोग करके ऑटो जेनरेट किया गया है। यानी मुझे इसे बदलना नहीं चाहिए।
मैं DataEventSet
वस्तु है, जो सामने आ रहा है बनाते हैं, तो जैसे:
private DataEventSet CreateDataEventSet()
{
DataEventSet aDataEventSet = new DataEventSet();
DataEvent[] dataEvents = new DataEvent[2];
DAInt aDAInt = new DAInt();
aDAInt.id = 100100100;
aDAInt.value = 1;
dataEvents[0] = aDAInt;
DADataSeq aDADataSeq = new DADataSeq();
aDADataSeq.id = 200100100;
double[] vals = new double[2];
vals[0] = 5;
vals[1] = 44;
aDADataSeq.values = vals;
double[] vals2 = new double[2];
vals2[0] = 1;
vals2[1] = 1;
aDADataSeq.xAxisDeltas = vals2;
aDADataSeq.xAxisStart = 0;
dataEvents[1] = aDADataSeq;
aDataEventSet.id = 0;
Site aSite = new Site();
aSite.category = SITE_CATEGORY.SITE_SPECIFIC;
aDataEventSet.site = aSite;
OsacbmTime aTime = new OsacbmTime();
aTime.tick_time = 12313246;
aTime.time = "2007-09-20T14:46:04.123";
aTime.time_type = OsacbmTimeType.OSACBM_TIME_MIMOSA;
aDataEventSet.time = aTime;
aDataEventSet.dataEvents = dataEvents;
return aDataEventSet;
}
संपादित करें: DataEventSet
//This source code was auto-generated by xsd
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.mimosa.org/OSACBMV3-1l")]
[System.Xml.Serialization.XmlRootAttribute(Namespace="http://www.mimosa.org/OSACBMV3-1l", IsNullable=false)]
public partial class DataEventSet {
private bool alertStatusField;
private bool alertStatusFieldSpecified;
private DataEvent[] dataEventsField;
private ulong idField;
private Site siteField;
private OsacbmTime timeField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public bool alertStatus {
get {
return this.alertStatusField;
}
set {
this.alertStatusField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlIgnoreAttribute()]
public bool alertStatusSpecified {
get {
return this.alertStatusFieldSpecified;
}
set {
this.alertStatusFieldSpecified = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("dataEvents", Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public DataEvent[] dataEvents {
get {
return this.dataEventsField;
}
set {
this.dataEventsField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public ulong id {
get {
return this.idField;
}
set {
this.idField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public Site site {
get {
return this.siteField;
}
set {
this.siteField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public OsacbmTime time {
get {
return this.timeField;
}
set {
this.timeField = value;
}
}
}
धन्यवाद! यह अब डब्ल्यूसीएफ टेस्ट क्लाइंट में काम करता है। लेकिन जब मैं बाहरी क्लाइंट के साथ सेवा तक पहुंचने का प्रयास करता हूं तो मुझे 'नेटडिस्परचरफॉल्ट अपवाद' मिलता है: "http://tempuri.org/:GetDataEventSetResult। इनर एक्सेप्शन संदेश 'लाइन 1 स्थिति 898 में त्रुटि थी। तत्व' http: // schemas .datacontract.org/2004/07/MimosaServerLib: DataEvent 'में एक प्रकार से डेटा होता है जो नाम पर नक्शा करता है। " – Jimmy
हल: सेवा संदर्भ lol अद्यतन करने की आवश्यकता है। – Jimmy
क्या ज्ञात टाइप() विशेषता का उपयोग कर रहा था? –