public void SubmitEval(Client.EvalServiceReference.Eval eval) { base.Channel.SubmitEval(eval); }
public System.Threading.Tasks.Task SubmitEvalAsync(Client.EvalServiceReference.Eval eval) { return(base.Channel.SubmitEvalAsync(eval)); }
public void TestNullableWithDictionary() { string Name = "GetEvalsResult"; string Wrapper = "GetEvalsResponse"; string Namespace = "http://tempuri.org/"; Type type = typeof(Client.EvalServiceReference.Eval[]); IEnumerable <Type> know_types = new List <Type>(); // This is the XML generated by WCF Server string xml = "<GetEvalsResponse xmlns=\"http://tempuri.org/\"> <GetEvalsResult xmlns:a=\"http://schemas.datacontract.org/2004/07/WcfServiceLibrary1\" xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\"> <a:Eval> <a:Id>8215784f-bf5f-4df8-b239-34a0a029a54e</a:Id> <a:itemsList> <a:EvalItem> <a:Item>Item on List 3</a:Item> <a:ItemTime>2012-03-04T04:04:00</a:ItemTime> <a:etype>COMPLEX</a:etype> </a:EvalItem> <a:EvalItem i:nil=\"true\" /> </a:itemsList> <a:itemsMap xmlns:b=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\"> <b:KeyValueOfstringEvalItemo8PfwX7N> <b:Key>Item3</b:Key> <b:Value> <a:Item>Item 2 on Map</a:Item> <a:ItemTime i:nil=\"true\" /> <a:etype>NONE</a:etype> </b:Value> </b:KeyValueOfstringEvalItemo8PfwX7N> <b:KeyValueOfstringEvalItemo8PfwX7N> <b:Key /> <b:Value i:nil=\"true\" /> </b:KeyValueOfstringEvalItemo8PfwX7N> </a:itemsMap> </a:Eval> </GetEvalsResult> </GetEvalsResponse>"; Client.EvalServiceReference.Eval[] evals = null; StringBuilder stringBuilder = new StringBuilder(); var ds = new DataContractSerializer(type, Name, Namespace, know_types); using (var xr = XmlDictionaryReader.CreateDictionaryReader(XmlReader.Create(new StringReader(xml)))) { xr.ReadStartElement(Wrapper, Namespace); for (xr.MoveToContent(); xr.NodeType == XmlNodeType.Element; xr.MoveToContent()) { XmlQualifiedName key = new XmlQualifiedName(xr.LocalName, xr.NamespaceURI); if (Name == key.Name && Namespace == key.Namespace) { break; } } evals = (Client.EvalServiceReference.Eval[])ds.ReadObject(xr, true); } using (var xw = XmlDictionaryWriter.CreateDictionaryWriter(XmlWriter.Create(new StringWriter(stringBuilder)))) { ds.WriteObject(xw, evals); } string actualXml = stringBuilder.ToString(); Assert.AreEqual(evals.Length, 1, "evals.Length missmatch"); Client.EvalServiceReference.Eval eval = evals[0]; Assert.AreEqual(eval.Id, "8215784f-bf5f-4df8-b239-34a0a029a54e", "eval.Id missmatch"); Assert.AreEqual(eval.itemsList.Length, 2, "eval.itemsList.Length missmatch"); Client.EvalServiceReference.EvalItem evalItem = eval.itemsList[0]; Assert.AreEqual(evalItem.Item, "Item on List 3", "evalItem.Item missmatch"); Assert.AreEqual(evalItem.ItemTime, DateTime.Parse("2012-03-04T04:04:00"), "evalItem.ItemTime missmatch"); Assert.AreEqual(evalItem.etype, Client.EvalServiceReference.EvalType.COMPLEX, "evalItem.etype missmatch"); Client.EvalServiceReference.EvalItem evalItem2 = eval.itemsList[1]; Assert.IsNull(evalItem2, "evalItem2 missmatch"); Assert.AreEqual(eval.itemsMap.Count, 2, "eval.itemsMap.Count missmatch"); Client.EvalServiceReference.EvalItem evalItem3 = eval.itemsMap["Item3"]; Assert.AreEqual(evalItem3.Item, "Item 2 on Map", "evalItem3.Item missmatch"); Assert.IsNull(evalItem3.ItemTime, "evalItem3.ItemTime missmatch"); Assert.AreEqual(evalItem3.etype, Client.EvalServiceReference.EvalType.NONE, "evalItem3.etype missmatch"); Client.EvalServiceReference.EvalItem evalItem4 = eval.itemsMap[""]; Assert.IsNull(evalItem4, "Item 2 on Map", "evalItem4"); Client.EvalServiceReference.Eval[] evals2 = null; using (var xr = XmlDictionaryReader.CreateDictionaryReader(XmlReader.Create(new StringReader(actualXml)))) { evals2 = (Client.EvalServiceReference.Eval[])ds.ReadObject(xr, true); } Assert.AreEqual(evals2.Length, 1, "evals2.Length missmatch"); Client.EvalServiceReference.Eval eval2 = evals2[0]; Assert.AreEqual(eval2.Id, "8215784f-bf5f-4df8-b239-34a0a029a54e", "eval2.Id missmatch"); Assert.AreEqual(eval2.itemsList.Length, 2, "eval2.itemsList.Length missmatch"); Client.EvalServiceReference.EvalItem eval2Item = eval2.itemsList[0]; Assert.AreEqual(eval2Item.Item, "Item on List 3", "eval2Item.Item missmatch"); Assert.AreEqual(eval2Item.ItemTime, DateTime.Parse("2012-03-04T04:04:00"), "eval2Item.ItemTime missmatch"); Assert.AreEqual(eval2Item.etype, Client.EvalServiceReference.EvalType.COMPLEX, "eval2Item.etype missmatch"); Client.EvalServiceReference.EvalItem eval2Item2 = eval2.itemsList[1]; Assert.IsNull(eval2Item2, "eval2Item2 missmatch"); Assert.AreEqual(eval2.itemsMap.Count, 2, "eval2.itemsMap.Count missmatch"); Client.EvalServiceReference.EvalItem eval2Item3 = eval2.itemsMap["Item3"]; Assert.AreEqual(eval2Item3.Item, "Item 2 on Map", "eval2Item3.Item missmatch"); Assert.IsNull(eval2Item3.ItemTime, "eval2Item3.ItemTime missmatch"); Assert.AreEqual(eval2Item3.etype, Client.EvalServiceReference.EvalType.NONE, "eval2Item3.etype missmatch"); Client.EvalServiceReference.EvalItem eval2Item4 = eval.itemsMap[""]; Assert.IsNull(eval2Item4, "eval2Item4 missmatch"); }