public Edit(int? id){ /* Codes */ }
[HttpPost]
public Edit(Item model){ /* Codes */ }
我在第一个 Edit 方法中检索了 Item 的副本,其中包含 ItemID 的值。但是当它到达 HttpPost 方法时,id 值丢失了。
如果切换到
public Edit(int? ItemID){ /* Codes */ }
[HttpPost]
public Edit(Item model){ /* Codes */ }
这样 ItemID 就可以持久化在 Item 模型中。 但这是处理问题的好方法吗? ASP.NET MVC 是否总是能够知道它需要将“ItemID”插入到 Item 中? 还有其他方法可以保留 ID 值吗?谢谢。
最佳答案
我不明白你如何在 HttpPost 处理中丢失 id。也许您应该检查一下您的 Binder ,并为自己写一份?根据我的经验,默认 Binder 有点麻烦。您可以从 here 开始尽管我并不假装这是最好的解决方案。如果您需要手动编写许多 Binder ,请查看一些可以帮助您以声明方式进行转换的工具,例如 AutoMapper .
关于asp.net-mvc - ASP.NET MVC 编辑时保留 mdoel 的 ID 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2458863/