public void SerializeCommand() { var cmd = new TestCommand(); cmd.Name = "test data"; var buffer = new System.IO.MemoryStream(); #if !SILVERLIGHT var bf = (TestCommand)Csla.Core.ObjectCloner.Clone(cmd); Assert.AreEqual(cmd.Name, bf.Name, "after BinaryFormatter"); var ndcs = new System.Runtime.Serialization.NetDataContractSerializer(); ndcs.Serialize(buffer, cmd); buffer.Position = 0; var n = (TestCommand)ndcs.Deserialize(buffer); Assert.AreEqual(cmd.Name, n.Name, "after NDCS"); #endif buffer = new System.IO.MemoryStream(); var mf = new Csla.Serialization.Mobile.MobileFormatter(); mf.Serialize(buffer, cmd); buffer.Position = 0; var m = (TestCommand)mf.Deserialize(buffer); Assert.AreEqual(cmd.Name, m.Name, "after MobileFormatter"); }
/// <summary> /// Deserializes a byte stream into an object. /// </summary> /// <param name="data"> /// Byte array containing the object's serialized /// data. /// </param> /// <returns> /// An object containing the data from the /// byte stream. The object must implement /// IMobileObject to be deserialized. /// </returns> public static object Deserialize(byte[] data) { using (var buffer = new System.IO.MemoryStream(data)) { var formatter = new MobileFormatter(); return(formatter.Deserialize(buffer)); } }
/// <summary> /// Deserializes a byte stream into an object. /// </summary> /// <param name="data"> /// Byte array containing the object's serialized /// data. /// </param> /// <returns> /// An object containing the data from the /// byte stream. The object must implement /// IMobileObject to be deserialized. /// </returns> public object DeserializeFromByteArray(byte[] data) { if (data == null) { return(null); } using (var buffer = new System.IO.MemoryStream(data)) { var formatter = new MobileFormatter(ApplicationContext); return(formatter.Deserialize(buffer)); } }
public void EnsureCollectionCanBeSerialized() { var builder = new ContainerBuilder(); builder.Register<IEntities>(_ => Mock.Of<IEntities>()); using (new ObjectActivator(builder.Build()).Bind(() => ApplicationContext.DataPortalActivator)) { var responses = DataPortal.CreateChild<PollSubmissionResponseCollection>( PollSubmissionResponseCollectionTests.CreateOptions()); var formatter = new MobileFormatter(); using (var stream = new MemoryStream()) { formatter.Serialize(stream, responses); stream.Position = 0; var newResponses = formatter.Deserialize(stream) as PollSubmissionResponseCollection; Assert.AreEqual(1, newResponses.Count, newResponses.GetPropertyName(_ => _.Count)); Assert.AreEqual(responses[0].OptionText, newResponses[0].OptionText, newResponses.GetPropertyName(_ => _[0].OptionText)); } } }
/// <summary> /// Deserializes a byte stream into an object. /// </summary> /// <param name="data"> /// Byte array containing the object's serialized /// data. /// </param> /// <returns> /// An object containing the data from the /// byte stream. The object must implement /// IMobileObject to be deserialized. /// </returns> public static object Deserialize(byte[] data) { if (data == null) return null; using (var buffer = new System.IO.MemoryStream(data)) { var formatter = new MobileFormatter(); return formatter.Deserialize(buffer); } }
/// <summary> /// Gets the search custom report data. /// </summary> /// <param name="report">The report.</param> public void GetSearchCustomReportData(Telerik.Reporting.Processing.Report report) { SetIdentity(report); var processName = report.Parameters["processName"].Value.ToString(); FilterList filter = null; var filterDefinition = report.Parameters["filterDefinition"].Value; if (filterDefinition == null) { report.Parameters["filterDefinition"].Value = string.Empty; // Stub. Necessarily to be the some value, to build report without exceptions } else { filter = new FilterList { FilterDescriptor.FromJSON((string)filterDefinition) }; } SortList sortDescriptors = null; var parameter = report.Parameters["sorting"].Value.ToString(); if (!string.IsNullOrEmpty(parameter)) { using (var stream = new MemoryStream(Convert.FromBase64String(parameter))) { var mf = new MobileFormatter(); sortDescriptors = mf.Deserialize(stream) as SortList; } } var filterString = report.Parameters["globalFilter"].Value.ToString(); var itemList = TheDynamicTypeManager.GetList<IInfoList>(processName, filterString, 0, short.MaxValue, sortDescriptors, filter).Cast<object>().ToList(); report.DataSource = itemList; }
/// <summary> /// Gets the report data. /// </summary> /// <param name="reportDocument">The report document.</param> public void GetReportData(ICustomReport reportDocument) { var currentReport = reportDocument.Reports.First(); var filterDefinition = GetFilterDefinition(currentReport); var filter = new FilterList { FilterDescriptor.FromJSON(filterDefinition) }; SortList sortDescriptors = null; var parameter = currentReport.ReportParameters["sorting"].Value.ToString(); if (!string.IsNullOrEmpty(parameter)) { using (var stream = new MemoryStream(Convert.FromBase64String(parameter))) { var mf = new MobileFormatter(); sortDescriptors = mf.Deserialize(stream) as SortList; } } var filterString = currentReport.ReportParameters["globalFilter"].Value.ToString(); //int pageNumber = Convert.ToInt32(currentReport.ReportParameters["pageNumber"].Value); //int pageSize = Convert.ToInt32(currentReport.ReportParameters["pageSize"].Value); List<dynamic> colItemList = TheDynamicTypeManager.GetList<IInfoList>(_processName, filterString, 0, short.MaxValue, sortDescriptors, filter).Cast<object>().ToList(); var info = colItemList.FirstOrDefault(); if (info != null) { if (!string.IsNullOrEmpty(((IInfoClass)info).AccessDeniedProperties)) { AccessDeniedList = ((IInfoClass)info).AccessDeniedProperties.Split('|').ToList(); } } currentReport.DataSource = colItemList; if (!reportDocument.FitToPage) { //Method RearrangeColumns automatically evaluates the optimal width of each column based on its contents var b = new Bitmap(1000, 1000); using (var graphics = Graphics.FromImage(b)) { RearrangeColumns(currentReport, colItemList.Cast<IInfoClass>(), graphics); } } }