public static IEncodedString GetPartialAgentDiagram(Agent a) { var view = new PartialModelView (); view.Add (a); foreach (var g in a.AssignedGoals ()) { view.Add (g); view.Add (g.Goal ()); } var stream1 = new MemoryStream(); var ser = new DataContractJsonSerializer(typeof(PartialModelView)); ser.WriteObject(stream1, view); stream1.Position = 0; StreamReader sr = new StreamReader(stream1); return new RawString (sr.ReadToEnd()); }