gpt4 book ai didi

javascript - MVC - 将整个模型作为参数传递给 javascript 中的 Url.Action

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:07:25 25 4
gpt4 key购买 nike

我可以将整个模型作为参数传递给 Url.Action 或类似的吗?

实际上,我将一个参数传递给 Controller ​​并加载模型,但我想传递整个模型。

window.location.replace('@Url.Action("Search", "Search", new { idSong = Model.IDSong })');

最佳答案

可以吗。是的。

您可以传递一个仅包含值类型或 string 属性的简单模型使用接受 object 的重载作为第三个参数

@Url.Action("Search", "Search", Model)

你愿意吗?没有。

在内部,该方法将创建一个 Dictionary基于每个属性名称和 .ToString()值并将其转换为查询字符串。不仅生成的 url 很难看,如果你有很多属性,或者属性的值包含长字符串,你可能会超过查询字符串限制并抛出异常。但主要问题是,任何属于复杂对象或集合的属性都会导致绑定(bind)失败,因为例如,属性为 List<string>。将生成 ..?somePropertyName=System.Collections.Generic.List[string]&....

只传递模型的 ID正如您现在所做的那样,从您的 Controller 中的存储库中再次获取模型。

关于javascript - MVC - 将整个模型作为参数传递给 javascript 中的 Url.Action,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35219354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com