亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Viewmodel 失去了它的一些值

Viewmodel 失去了它的一些值

C#
泛舟湖上清波郎朗 2023-07-09 17:43:13
抱歉,如果這個問題已經有答案,但我找不到。提交表單時,我的ViewModel會丟失一些值。具體來說,錯誤對象會丟失其值。我不明白為什么。我沒有任何東西可以覆蓋它。我非常感謝我能得到的任何幫助。我嘗試刪除= new ...(),但這會使程序拋出錯誤不是對象的實例視圖模型:namespace Vacation.ViewModels{    public class EditScheduleViewModel : BaseViewModel    {        public EditScheduleError Error { get; set; } = new EditScheduleError();        public string GotoSched { get; set; } = "";        public string GotoURL { get; set; } = "";        public string Title { get; set; } = "";        public bool isLast { get; set; } = false;        public User Employee { get; set; } = new User();        public int TotalWeeks { get; set; } = 2;        public Schedule ScheduleActive { get; set; } = new Schedule();        public DateTime LastSchedEndDate { get; set; }        public List<Schedule> ScheduleAll { get; set; } = new List<Schedule>();        public List<ScheduleDay> Days { get; set; } = new List<ScheduleDay>(new ScheduleDay[28]);        public List<int> ClinicIds { get; set; } = new List<int>(new int[28]);        public List<ClinicInfo> ClinicsList { get; set; } = new List<ClinicInfo>();        public EditScheduleViewModel ()        {            ProjectName = "Scheman";        }    }    public class EditScheduleError    {        public bool Overlaps { get; set; }        public EditScheduleOverlappingError OverlappingError { get; set; } = new EditScheduleOverlappingError();    }    public class EditScheduleOverlappingError    {        public bool OverlapsBefore { get; set; }        public bool OverlapsAfter { get; set; }        public int IdBefore { get; set; }        public int IdAfter { get; set; }        public EditScheduleOverlappingErrorResolutions Resolution { get; set; } = new EditScheduleOverlappingErrorResolutions();    }    public class EditScheduleOverlappingErrorResolutions    {        public bool ChangeThis { get; set; }        public bool ChangeOther { get; set; }    }}這不是控制器的全部部分...您需要更多嗎?預期的行為是錯誤保持其值,即使在我提交了表單之后也是如此。
查看完整描述

1 回答

?
holdtom

TA貢獻1805條經驗 獲得超10個贊

通過將其添加到視圖中,它起作用了!由于某種原因我必須設置這些值......不確定為什么。但是嘿,只要它有效,對吧?:)


@Html.HiddenFor(x => x.MyError.Overlaps, new { @Value = Model.MyError.Overlaps })

        @Html.HiddenFor(x => x.MyError.OverlappingError.OverlapsAfter, new { @Value = Model.MyError.OverlappingError.OverlapsAfter })

        @Html.HiddenFor(x => x.MyError.OverlappingError.OverlapsBefore, new { @Value = Model.MyError.OverlappingError.OverlapsBefore })

        @Html.HiddenFor(x => x.MyError.OverlappingError.IdAfter, new { @Value = Model.MyError.OverlappingError.IdAfter })

        @Html.HiddenFor(x => x.MyError.OverlappingError.IdBefore, new { @Value = Model.MyError.OverlappingError.IdBefore })



查看完整回答
反對 回復 2023-07-09
  • 1 回答
  • 0 關注
  • 142 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號