public void ISerializable() { var product = dbContext.Products.First(); var t = (dbContext as IObjectContextAdapter).ObjectContext; t.LoadProperty(product, f => f.Order_Details); var dataContractSerializer = new GenericDataContractSerializer <Product>(); dataContractSerializer.WriteObject("D:/result_2.xml", product); var result = dataContractSerializer.ReadObject("D:/result_2.xml"); Assert.AreEqual(product.GetType(), result.GetType()); Assert.AreEqual(product.Order_Details.Count(), result.Order_Details.Count()); }
public void SerializationCallbacks() { dbContext.Configuration.ProxyCreationEnabled = false; var categories = dbContext.Categories.ToList(); var category = categories.First(); var dataContractSerializer = new GenericDataContractSerializer <Category>(); dataContractSerializer.WriteObject("D:/result_1.xml", category); var result = dataContractSerializer.ReadObject("D:/result_1.xml"); Assert.AreEqual(category.GetType(), result.GetType()); Assert.AreEqual(category.Products.Count(), result.Products.Count()); }
public void IDataContractSurrogate() { dbContext.Configuration.ProxyCreationEnabled = true; dbContext.Configuration.LazyLoadingEnabled = true; var order = dbContext.Orders.First(); var surrogate = new OrderDataContractSurrogate(); var serializer = new GenericDataContractSerializer <Order>(surrogate); serializer.WriteObject("D:/result_4.xml", order); var deserializer = new GenericDataContractSerializer <Order>(surrogate); var result = deserializer.ReadObject("D:/result_4.xml"); Assert.AreNotEqual(order.GetType(), result.GetType()); Assert.AreEqual(order.OrderID, result.OrderID); }
private RIPMessage PrepareEvent(string sender, string receiver, int reqId, int responseId, RequestType type, SerializableDictionary <int, string> data) { RIPMessage e = new RIPMessage(new object()); RequestMessage msg = new RequestMessage() { SenderID = sender, ReceiverID = receiver, TimeOfSending = DateTime.Now, RequestID = reqId, RequestType = type, DataParams = data, }; //msg.DataParams.Add(1, "dddd"); string xmlString = GenericDataContractSerializer <RequestMessage> .SerializeObject(msg); e.Request = xmlString; return(e); }
public void Publish(RIPMessage e, String topicName) { if (e != null) { int itemNum = (lstEvents.Items.Count < 1) ? 0 : lstEvents.Items.Count; lstEvents.Items.Add(itemNum.ToString()); RequestMessage p = GenericDataContractSerializer <RequestMessage> .DeserializeXml(e.Request); // lstEvents.Items[itemNum].SubItems.AddRange(new string[] { "sender id : " + p.SenderID + ", receiver id : " + p.ReceiverID + ", req type is : " + // p.RequestType.ToString() + " data : " +p.DataParams[1] , e.EventData }); lstEvents.Items[itemNum].SubItems.AddRange(new string[] { "sender id : " + p.SenderID, ", receiver id : " + p.ReceiverID, ", req type is : " + p.RequestType.ToString(), " data : " + p.DataParams[1], e.EventData }); _eventCount += 1; txtAstaEventCount.Text = _eventCount.ToString(); } }
public static void Serialize <T>(T toSerialize, string filePath) { var bytes = GenericDataContractSerializer.SerializeBinary(toSerialize); File.WriteAllBytes(filePath, bytes); }
public static T Deserialize <T>(string filePath) { byte[] bytes = File.ReadAllBytes(filePath); return(GenericDataContractSerializer.DeserializeBinary <T>(bytes)); }
public static string PDFCreationDAREMailforInspection(T obj1, ServiceResponseModel <UpdateEfleetInspectionTypeXML> result) { try { string returnPath = string.Empty; dynamic obj = obj1; var objEmailLogRepository = new EmailLogRepository(); var objEmailReturn = new List <EmailToManagerModel>(); var objListEmailog = new List <EmailLog>(); if (result.Data.Response == 1) { objEmailReturn = objEmailLogRepository.SendEmailToManagerForeFleetInspection(obj.LocationId, obj.UserId).Result; } if (result.Data.DamageTireStatus == true && result.Data.EmergencyAccessoriesStatus == true && result.Data.EngineExteriorStatus == true && result.Data.InteriorMileageDriverStatus == true && obj.Status == eFleetCheckInOut.PreTrip || obj.Status == eFleetCheckInOut.PostTrip) { var objTemplateModel = new TemplateModel(); //Added By Bhushan Dod on 06/09/2017 for Damage in mobile app if (result.Data.DamageTireDetails != null) { var ObjReturnDamageTire = new eFleetDamageTireModel(); ObjReturnDamageTire = GenericDataContractSerializer <eFleetDamageTireModel> .DeserializeXml(result.Data.DamageTireDetails); objTemplateModel.DamageTire = ObjReturnDamageTire; } //Added By Bhushan Dod on 06/09/2017 for Damage in mobile app if (result.Data.InteriorMileageDriverDetails != null) { var objInteriorMileageDriverDetails = new eFleetInteriorMileageDriverModel(); objInteriorMileageDriverDetails = GenericDataContractSerializer <eFleetInteriorMileageDriverModel> .DeserializeXml(result.Data.InteriorMileageDriverDetails); objTemplateModel.InteriorMileageDriver = objInteriorMileageDriverDetails; } //Added By Bhushan Dod on 06/09/2017 for Damage in mobile app if (result.Data.EngineExteriorDetails != null) { var objEngineExteriorDetails = new eFleetEngineExteriorModel(); objEngineExteriorDetails = GenericDataContractSerializer <eFleetEngineExteriorModel> .DeserializeXml(result.Data.EngineExteriorDetails); objTemplateModel.EngineExterior = objEngineExteriorDetails; } //Added By Bhushan Dod on 06/09/2017 for Damage in mobile app if (result.Data.EmergencyAccessoriesDetails != null) { var objEmergencyAccessoriesDetails = new eFleetEmergencyAccessoriesModel(); objEmergencyAccessoriesDetails = GenericDataContractSerializer <eFleetEmergencyAccessoriesModel> .DeserializeXml(result.Data.EmergencyAccessoriesDetails); objTemplateModel.EmergencyAccessories = objEmergencyAccessoriesDetails; } objTemplateModel.Status = obj.Status; objTemplateModel.UserName = obj.UserName; objTemplateModel.VehicleNumber = result.Data.VehicleNumber; objTemplateModel.QRCodeID = result.Data.QRCodeID; objTemplateModel.TimeZoneName = obj.TimeZoneName; objTemplateModel.TimeZoneOffset = obj.TimeZoneOffset; objTemplateModel.IsTimeZoneinDaylight = obj.IsTimeZoneinDaylight; string htmlData = TemplateDesigner.eFleetTemplate(objTemplateModel); returnPath = VehicleManager.SaveInspectionPDF(obj.QrcodeId, htmlData); if (objEmailReturn.Count > 0 && result.Data.Response == 1) { foreach (var item in objEmailReturn) { bool IsSent = false; var objEmailHelper = new EmailHelper(); objEmailHelper.emailid = item.ManagerEmail; objEmailHelper.ManagerName = item.ManagerName; objEmailHelper.VehicleMake = result.Data.Make; objEmailHelper.VehicleModel = result.Data.Model; objEmailHelper.VehicleIdentificationNumber = result.Data.VehicleNumber; objEmailHelper.LocationName = result.Data.LocationName; objEmailHelper.UserName = item.UserName; objEmailHelper.QrCodeId = obj.QrcodeId; objEmailHelper.InfractionStatus = obj.Status; objEmailHelper.MailType = "EFLEETINSPECTIONREPORT"; objEmailHelper.SentBy = item.RequestBy; objEmailHelper.LocationID = item.LocationID; objEmailHelper.TimeAttempted = DateTime.UtcNow.ToMobileClientTimeZone(objTemplateModel.TimeZoneName, objTemplateModel.TimeZoneOffset, objTemplateModel.IsTimeZoneinDaylight, false).ToString(); string[] attachFiles = new string[1]; for (var i = 0; i < attachFiles.Count(); i++) { attachFiles[i] = HttpContext.Current.Server.MapPath("~/Content/eFleetDocs/Inspection/" + returnPath); } IsSent = objEmailHelper.SendEmailWithTemplate(attachFiles); //Push Notification string message = PushNotificationMessages.eFleetInspectionReported(result.Data.LocationName, result.Data.QRCodeID, result.Data.VehicleNumber); PushNotification.GCMAndroid(message, item.DeviceId, objEmailHelper); if (IsSent == true) { var objEmailog = new EmailLog(); try { objEmailog.CreatedBy = item.RequestBy; objEmailog.CreatedDate = DateTime.UtcNow; objEmailog.DeletedBy = null; objEmailog.DeletedOn = null; objEmailog.LocationId = item.LocationID; objEmailog.ModifiedBy = null; objEmailog.ModifiedOn = null; objEmailog.SentBy = item.RequestBy; objEmailog.SentEmail = item.ManagerEmail; objEmailog.Subject = objEmailHelper.Subject; objEmailog.SentTo = item.ManagerUserId; objListEmailog.Add(objEmailog); } catch (Exception ex) { return(returnPath); } } } using (var context = new workorderEMSEntities()) { context.EmailLogs.AddRange(objListEmailog); context.SaveChanges();; } //var x = EmailLogRepository.InsertEntitiesNew("EmailLog", objListEmailog); //Task<bool> x = null; //foreach (var i in objListEmailog) //{ // x = objEmailLogRepository.SaveEmailLogAsync(i); //} } } return(returnPath); } catch (Exception ex) { Exception_B.Exception_B.exceptionHandel_Runtime(ex, "static bool PDFCreationDAREMailforInspection(T obj1, ServiceResponseModel<UpdateEfleetInspectionTypeXML> result)", "while creating PDF", result.Data.VehicleID); return(null); } }
public void ExecuteWMIForOneApp(CheckLicenseModel chc, string username, string password, int opreationidi, List <ControlPointDTO> checklist, bool isRemote) { var levelid = 0; var softwares = ""; var software = chc.App; var guids = Guid.NewGuid(); var guidId = guids.ToString(); var logs = new List <LogData>(); var remote = String.IsNullOrEmpty(chc.Name) ? chc.Ip : chc.Name; var xmlreq = new RequestedXml { ComputerName = chc.Name, Ip = chc.Ip, IsRemote = isRemote.ToString(), Password = password, UserName = username, WorkDate = DateTime.Now.ToString("dd-MM-yyyy") }; ProcessWMI process = new ProcessWMI(remote, username, password, isRemote); try { logs.Add(new LogData { AppName = remote, Id = guidId, StartTime = DateTime.Now, Method = "ExecuteWMI", LogDataType = LogDataType.InitiliazeProcess, ComputerId = (int)chc.ComputerId }); logs.Add(new LogData { AppName = remote, ReqXml = GenericDataContractSerializer <RequestedXml> .SerializeObject(xmlreq), Id = guidId, LevelId = levelid, Method = "ExecuteWMI", StartTime = DateTime.Now, LogDataType = LogDataType.InitiliazeItemOfProcess, OperationId = (int)chc.OperationId }); chc.LogId = guids; chc.InitiliazeObject(); process.Connect(); foreach (var item in checklist) { if (item.Name == "Add or Remove Programs" && item.WillChecked == true) { var addremove = ""; try { levelid++; logs.Add(new LogData { ReqXml = GenericDataContractSerializer <ControlPointDTO> .SerializeObject(item), Id = guidId, LevelId = levelid, Method = "Add or Remove Programs", StartTime = DateTime.Now, LogDataType = LogDataType.InitiliazeItemOfProcess }); addremove = "ADD OR REMOVE PROGRAMS" + "\n\r" + "\n\r"; var win32product = process.GetProductWithWMI(software); outputs.Win32_products = win32product; if (win32product.Count > 0) { foreach (var prd in win32product) { addremove += prd.Name + " InstallDate : " + prd.InstallDate + ")" + "\n\r"; } chc.Installed = true; chc.IsFound = true; chc.SerialNumber = win32product[0].ProductID; } else { addremove += "Programs are not found" + "\n\r"; } } catch (Exception ex) { addremove += "Fail : " + ex.Message + "\n\r"; } softwares += addremove; logs.Add(new LogData { Id = guidId, ResXml = addremove, State = LogDataState.Success, LevelId = levelid, EndTime = DateTime.Now, LogDataType = LogDataType.UpdateItemOfProcess }); } if (item.Name == "Registry Key" && item.WillChecked == true) { var registerys = ""; try { levelid++; logs.Add(new LogData { ReqXml = GenericDataContractSerializer <ControlPointDTO> .SerializeObject(item), Id = guidId, LevelId = levelid, Method = "Registry Key", StartTime = DateTime.Now, LogDataType = LogDataType.InitiliazeItemOfProcess }); registerys += "\n\r" + "REGISTERY KEY" + "\n\r" + "\n\r"; var registeryproduct = process.ReadRegisteryusingWMI(software); outputs.RegistryAutoDesk = registeryproduct; if (registeryproduct.Count > 0) { foreach (var reg in registeryproduct) { registerys += reg.DisplayName + " InstallDate" + reg.InstallDate + ")" + "\n\r"; } chc.Installed = true; chc.IsFound = true; } else { registerys += "Registry keys are not found." + "\n\r"; } } catch (Exception ex) { registerys += "Fail : " + ex.Message + "\n\r"; } softwares += registerys; logs.Add(new LogData { Id = guidId, ResXml = registerys, State = LogDataState.Success, LevelId = levelid, EndTime = DateTime.Now, LogDataType = LogDataType.UpdateItemOfProcess }); } if (item.Name == "Application Events" && item.WillChecked == true) { levelid++; var appevent = ""; logs.Add(new LogData { ReqXml = GenericDataContractSerializer <ControlPointDTO> .SerializeObject(item), Id = guidId, LevelId = levelid, Method = "Application Events", StartTime = DateTime.Now, LogDataType = LogDataType.InitiliazeItemOfProcess }); try { appevent += "APPLICATION EVENTS" + "\n\r" + "\n\r"; var events = process.GetApplicationEvent(software); outputs.ApplicationEvents = events; if (events.Count > 0) { foreach (var evt in events) { appevent += evt.Message + "(" + evt.TimeWritten + ")" + "\n\r"; } if (chc.Installed == false) { chc.Uninstalled = true; } chc.IsFound = true; } else { appevent += "Application events are not found" + "\n\r"; } } catch (Exception ex) { appevent += "Fail : " + ex.Message + "\n\r"; } softwares += appevent; logs.Add(new LogData { Id = guidId, ResXml = appevent, State = LogDataState.Success, LevelId = levelid, EndTime = DateTime.Now, LogDataType = LogDataType.UpdateItemOfProcess }); } if (item.Name == "File Explorer" && item.WillChecked == true) { var fileexplorer = ""; levelid++; logs.Add(new LogData { ReqXml = GenericDataContractSerializer <ControlPointDTO> .SerializeObject(item), Id = guidId, LevelId = levelid, Method = "File Explorer", StartTime = DateTime.Now, LogDataType = LogDataType.InitiliazeItemOfProcess }); try { fileexplorer += "FILE EXPLORER" + "\n\r" + "\n\r" + "\n\r"; var model = process.DirectoryChecklist(client.GetFEControlList(software.Id).ToList()); if (model.directories.Count > 0 || model.files.Count > 0) { foreach (var dir in model.directories) { fileexplorer += dir.Name + " InstallDate : (" + dir.InstallDate + ")" + "\n\r"; } foreach (var dir in model.files) { fileexplorer += dir.Name + " InstallDate : (" + dir.InstallDate + ")" + "\n\r"; } outputs.FileExplorerModel = model; if (chc.Installed == false) { chc.Uninstalled = true; } chc.IsFound = true; } } catch (Exception ex) { fileexplorer += "Fail : " + ex.Message + "\n\r"; } softwares += fileexplorer; logs.Add(new LogData { Id = guidId, ResXml = fileexplorer, State = LogDataState.Success, LevelId = levelid, EndTime = DateTime.Now, LogDataType = LogDataType.UpdateItemOfProcess }); } } chc.Success = true; if (outputs.Win32_products != null && outputs.Win32_products.Count > 0) { try { chc.InstallDate = outputs.Win32_products.GroupBy(s => s.ProductID).Select(s => s.OrderByDescending(x => x.InstallDate).FirstOrDefault().InstallDate).First(); chc.Installed = true; chc.Uninstalled = false; chc.Description = "Install Date is found from add or remove programs..."; } catch (Exception ex) { chc.Output += "Fail When Get Install Date from Win32_products :" + ex.Message + "\n\r"; } } else if (outputs.RegistryAutoDesk != null && outputs.RegistryAutoDesk.Count > 0) { try { chc.InstallDate = outputs.RegistryAutoDesk.Where(x => x.InstallDate != null).GroupBy(s => s.DisplayName).Select(s => s.OrderByDescending(x => x.InstallDate).FirstOrDefault().InstallDate).First(); chc.Installed = true; chc.Uninstalled = false; chc.Description = "Install Date is found from registery keys..."; } catch (Exception ex) { chc.Output += "Fail When Get Install Date from RegistryAutoDesk :" + ex.Message + "\n\r"; } } else if (outputs.ApplicationEvents != null && outputs.ApplicationEvents.Count > 0) { try { chc.UnInstallDate = outputs.ApplicationEvents.GroupBy(s => s.ComputerName).Select(s => s.OrderByDescending(x => x.TimeWritten).FirstOrDefault().TimeWritten).First(); chc.Installed = false; chc.Uninstalled = true; chc.Description = "UnInstall Date is found from Application Events..."; } catch (Exception ex) { chc.Output += "Fail When Get Install Date from ApplicationEvents :" + ex.Message + "\n\r"; } } else if (outputs.FileExplorerModel != null && outputs.FileExplorerModel.directories.Count > 0) { try { chc.UnInstallDate = outputs.FileExplorerModel.directories.GroupBy(s => s.Name).Select(s => s.OrderByDescending(x => x.LastAccessed).FirstOrDefault().LastAccessed).First(); chc.Installed = false; chc.Uninstalled = true; chc.Description = "UnInstall Date is found from File Explorer"; } catch (Exception ex) { chc.Output += "Fail When Get Install Date from FileExplorerModel :" + ex.Message + "\n\r"; } } chc.Success = true; chc.Output = softwares; } catch (Exception ex) { softwares += "\r\n" + ex.Message; chc.Fail = true; chc.Success = false; chc.Output = softwares; logs.Add(new LogData { AppName = remote, Id = guidId, ResXml = chc.Output, State = LogDataState.Success, LevelId = 0, EndTime = DateTime.Now, LogDataType = LogDataType.UpdateItemOfProcess }); logs.Add(new LogData() { AppName = remote, Id = guidId, EndTime = DateTime.Now, LogDataType = LogDataType.UpdateProcess }); try { client.LogToDb(logs.ToArray()); } catch (Exception e) { var message = e.Message; } chc.QueryState = CategorizeProcessResult(chc.Output, chc.App.AppName); chc.State = (int)chc.QueryState; return; } try { logs.Add(new LogData { AppName = remote, Id = guidId, ResXml = chc.Output, State = LogDataState.Success, LevelId = 0, EndTime = DateTime.Now, LogDataType = LogDataType.UpdateItemOfProcess }); logs.Add(new LogData() { AppName = remote, Id = guidId, EndTime = DateTime.Now, LogDataType = LogDataType.UpdateProcess }); client.LogToDb(logs.ToArray()); chc.QueryState = CategorizeProcessResult(chc.Output, chc.App.AppName); chc.State = (int)chc.QueryState; } catch (Exception ex) { var message = ex.Message; } return; }
/// <summary> /// CreatedBy : Bhushan Dod /// CreatedOn : Sep-08-2017 /// CreatedFor : Get eFleet Vehicle by ID /// </summary> /// <param name="vehicleId"></param> /// <returns></returns> public VehicleScanModel GeteFleetVehicleById(string QRCodeID, long locationId) { try { var ObjReturn = new VehicleScanModel(); //ServiceQrcShuttleBusModel objReturnShuttle = new ServiceQrcShuttleBusModel(); var ObjeFleetVehicleRepository = new eFleetVehicleRepository(); var ObjUserRepository = new UserRepository(); var ObjVehicleDetail = ObjeFleetVehicleRepository.GetSingleOrDefault(q => q.QRCodeID == QRCodeID && q.LocationID == locationId && q.IsDeleted == false); if (ObjVehicleDetail == null) { throw new Exception("Record not found."); } AutoMapper.Mapper.CreateMap <eFleetVehicle, VehicleScanModel>(); ObjReturn = AutoMapper.Mapper.Map(ObjVehicleDetail, ObjReturn); string HostingPrefix = Convert.ToString(System.Configuration.ConfigurationManager.AppSettings["hostingPrefix"], CultureInfo.InvariantCulture); string AssetImgURLPrefix = Convert.ToString(System.Configuration.ConfigurationManager.AppSettings["VehicleImage"], CultureInfo.InvariantCulture); ObjReturn.VehicleImage = HostingPrefix + AssetImgURLPrefix.Replace("~", "") + ObjVehicleDetail.VehicleImage; //Added By Bhushan Dod on 06/09/2017 for Damage in mobile app if (ObjVehicleDetail.DamageTireDetails != null) { var ObjReturnDamageTire = new eFleetDamageTireModel(); ObjReturnDamageTire = GenericDataContractSerializer <eFleetDamageTireModel> .DeserializeXml(ObjVehicleDetail.DamageTireDetails); //ObjReturn.DamageTire = ObjReturnDamageTire; //ObjReturn.IsDamage = ObjReturnDamageTire.Damage.IsDamage; //ObjReturn.DarID = ObjReturnDamageTire.Damage.DamageDarId; } //Added By Bhushan Dod on 06/09/2017 for Damage in mobile app if (ObjVehicleDetail.InteriorMileageDriverDetails != null) { var objInteriorMileageDriverDetails = new eFleetInteriorMileageDriverModel(); objInteriorMileageDriverDetails = GenericDataContractSerializer <eFleetInteriorMileageDriverModel> .DeserializeXml(ObjVehicleDetail.InteriorMileageDriverDetails); ObjReturn.ChShDescription = objInteriorMileageDriverDetails.Mileage.ChShDescription; ObjReturn.OldChShDescription = objInteriorMileageDriverDetails.Mileage.OldChShDescription; //ObjReturn.InteriorMileageDriver = objInteriorMileageDriverDetails; } //Added By Bhushan Dod on 06/09/2017 for Damage in mobile app if (ObjVehicleDetail.EngineExteriorDetails != null) { var objEngineExteriorDetails = new eFleetEngineExteriorModel(); objEngineExteriorDetails = GenericDataContractSerializer <eFleetEngineExteriorModel> .DeserializeXml(ObjVehicleDetail.EngineExteriorDetails); //ObjReturn.EngineExterior = objEngineExteriorDetails; } //Added By Bhushan Dod on 06/09/2017 for Damage in mobile app if (ObjVehicleDetail.EmergencyAccessoriesDetails != null) { var objEmergencyAccessoriesDetails = new eFleetEmergencyAccessoriesModel(); objEmergencyAccessoriesDetails = GenericDataContractSerializer <eFleetEmergencyAccessoriesModel> .DeserializeXml(ObjVehicleDetail.EmergencyAccessoriesDetails); //ObjReturn.EmergencyAccessories = objEmergencyAccessoriesDetails; } return(ObjReturn); } catch (Exception ex) { WorkOrderEMS.BusinessLogic.Exception_B.Exception_B.exceptionHandel_Runtime(ex, "VehicleScanModel GeteFleetVehicleById(long vehicleId, long locationId)", "while fetching GeteFleetVehicleById", QRCodeID); return(null); } }