V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cylmsun
V2EX  ›  .NET

.net MVC 局部视图相关求助

  •  
  •   cylmsun · 2020-04-07 16:30:00 +08:00 · 2059 次点击
    这是一个创建于 1721 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如我有一个主视图,叫 A,A 的 view 中通过 @Html.Partial("",Model.A1/A2/...))加了几个局部视图 A1,A2... 这些 A1,A2...各自都有自己独立的 model,且是 Model A 的子 model 。

    现在有个问题,我 PartialView 中的 input 等控件修改值之后,在 A 相应的 Action 中并不能获取到 A1 的值;比如这个响应的 action: ModelA ma = new ModelA(); this.UpdateModel(ma);

    执行到这边之后,ma.A1 是 NULL ;

    请问该怎么解决?

    3 条回复    2020-04-08 15:31:42 +08:00
    gowk
        1
    gowk  
       2020-04-07 17:59:10 +08:00
    v 站用.NET 的少之又少,partial view model binding 等等关键字 Google 一下吧,stackoverflow 直接参考答案。

    @Html.Partial("", Model.A1, new ViewDataDictionary(ViewData)
    {
    TemplateInfo = new TemplateInfo()
    {
    HtmlFieldPrefix = "A1"
    }
    })

    https://stackoverflow.com/questions/15307978
    https://stackoverflow.com/questions/20693698
    cylmsun
        2
    cylmsun  
    OP
       2020-04-08 11:45:10 +08:00
    @gowk 感谢
    forgottencoast
        3
    forgottencoast  
       2020-04-08 15:31:42 +08:00
    如 @gowk 所说,你先检查修改后值有没有提交给服务端,如果有就是绑定——前缀识别的问题。
    HtmlFieldPrefix 就是干这个的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3337 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 11:30 · PVG 19:30 · LAX 03:30 · JFK 06:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.