/// <summary> /// このインスタンスを、それと同等なUtility.Models.Entites.DtDeliveryResult型に変換する。 /// 各変換メソッド共通部分 /// </summary> /// <returns></returns> private Utility.Models.Entites.DtDeliveryResult ToModelCommonPart() { Utility.Models.Entites.DtDeliveryResult model = new Utility.Models.Entites.DtDeliveryResult(); model.Sid = this.Sid; model.DeviceSid = this.DeviceSid; model.GwDeviceSid = this.GwDeviceSid; model.DeliveryGroupSid = this.DeliveryGroupSid; model.CreateDatetime = this.CreateDatetime; return(model); }
/// <summary> /// このインスタンスを、それと同等なUtility.Models.Entites.DtDeliveryResult型に変換する。 /// </summary> /// <returns></returns> public Utility.Models.Entites.DtDeliveryResult ToModel() { Utility.Models.Entites.DtDeliveryResult model = ToModelCommonPart(); model.DtInstallResult = this.DtInstallResult.Select(y => y.ToChildModel(this.GetType())).ToHashSet(); model.DtDeliveryGroup = this.DeliveryGroupS?.ToParentModel(this.GetType()); model.DtDevice = this.GwDeviceS?.ToParentModel(this.GetType()); model.DtDevice1 = this.DeviceS?.ToParentModel(this.GetType()); return(model); }
/// <summary> /// このインスタンスを、それと同等なUtility.Models.Entites.DtDeliveryResult型に変換する。 /// 親エンティティとして生成するため、子エンティティの情報はもたない /// </summary> /// <returns></returns> public Utility.Models.Entites.DtDeliveryResult ToParentModel(Type childType) { Utility.Models.Entites.DtDeliveryResult model = ToModelCommonPart(); // 親子間の参照無限ループを避けるためにタイプチェック if (this.DtInstallResult.LastOrDefault()?.GetType() != childType) { model.DtInstallResult = this.DtInstallResult.Select(y => y.ToChildModel(this.GetType())).ToHashSet(); } model.DtDeliveryGroup = this.DeliveryGroupS?.ToParentModel(this.GetType()); model.DtDevice = this.GwDeviceS?.ToParentModel(this.GetType()); model.DtDevice1 = this.DeviceS?.ToParentModel(this.GetType()); return(model); }
/// <summary> /// コンストラクタ /// </summary> /// <param name="model">Utility.Models.Entites.DtDeliveryResultのインスタンス</param> public DtDeliveryResult(Utility.Models.Entites.DtDeliveryResult model) { this.Sid = model.Sid; this.DeviceSid = model.DeviceSid; this.GwDeviceSid = model.GwDeviceSid; this.DeliveryGroupSid = model.DeliveryGroupSid; this.CreateDatetime = model.CreateDatetime; this.DtInstallResult = model.DtInstallResult.Select(y => new DtInstallResult(y)).ToHashSet(); this.DeliveryGroupS = model.DtDeliveryGroup == null ? null : new DtDeliveryGroup(model.DtDeliveryGroup); this.GwDeviceS = model.DtDevice == null ? null : new DtDevice(model.DtDevice); this.DeviceS = model.DtDevice1 == null ? null : new DtDevice(model.DtDevice1); }