问题标签 [updatemodel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
31174 浏览

ruby-on-rails - Rails update_attributes 方法是更新数据库中模型的最佳选择吗?

我正在介绍的 Rails 1.1.6 教程建议使用update_attributes更新模型的方法,如上面列出的控制器中的示例代码所示。查看 Rails 文档,我想知道为什么update不首选该方法,尤其是因为它的命名如此合乎逻辑。

0 投票
2 回答
272 浏览

asp.net-mvc - 将 asp.net MVC 从 Beta 升级到 1.0 版

a)目前我在 asp.mvc beta 上实时部署了一个应用程序......但几天前它拒绝使用以下错误:

找不到方法:'System.String System.Web.Mvc.Html.LinkExtensions.RouteLink(System.Web.Mvc.HtmlHelper,System.String,System.Web.Routing.RouteValueDictionary,System.Web.Routing.RouteValueDictionary)'。

版本信息:Microsoft .NET Framework 版本:2.0.50727.3053;ASP.NET 版本:2.0.50727.3053

搜索结果并没有给我相关的东西:(

b)我的下一步是将应用程序升级到 asp.net mvc 1.0 ...但这里我有一个新问题:如果在测试版中我有:

那么现在 UpdateModel(map, "/ 接受 IValueProvider 或 DefaultValueProvider /");

问题:

  1. 这里发生了什么变化?(我想hostng环境已经改变了一些东西)
  2. 我应该在这里调整什么以不破坏已经实现的功能?
0 投票
2 回答
6217 浏览

asp.net-mvc - MVC 更新模型

我不确定以前是否有人问过这个问题,但这里是。

我有一个 HTML 看起来像这样的 MVC 应用程序;

我在控制器中有以下内容;

然后在提交按钮事件上;

如果我正在更新现有事件,我没有问题。如果我要添加新事件,则会收到 UpdateModel 无法更新模型的错误消息。

如果我从第一个 ActionResult 中删除“int?id”参数,则模型会根据新事件和现有事件进行更新。

当我编辑一个事件时,我使用以下 HTML;<%=Html.ActionLink("Edit", "Edit", new {id=Model.Event.id}) %>当我创建一个新事件时,我使用<%=Html.ActionLink("Add event","Edit", "Calendar") %>.

现在可以承认,我可能不应该对更新和创建使用相同的视图,并且可能应该重构为两个视图和一个 PartialView。

那么,这是解决方案还是我做错了什么?

提前致谢。

</griegs>

0 投票
2 回答
712 浏览

asp.net-mvc - 使用 SelectList 更新模型

我有一个名为 Product 的类

请告诉我如何使用 UpdateModel 方法更新类别。

下面你会在视图中找到类别代码

0 投票
1 回答
2404 浏览

asp.net - ASP.NET MVC、LINQ 和 UpdateModel 问题

好的 - 我在数据库中有两个表,员工和公司。以下是每个的基本模式

所以现在我有一对多的关系,因为每家公司都可以有多名员工。我还为我的员工类创建了一个 dataRepository,它具有以下功能:

到目前为止一切都很好。当我需要编辑员工时,问题就来了。这是我的控制器功能

找到了员工,填充了编辑表单,并且发布功能正在按应有的方式触发。但是,我的 updateModel 失败,没有真正的解释。我跟踪了通过 updateModel 的代码,并且所有属性都被分配了正确的值。但是,当 updateModel 到达 LinqToSql 类中的以下部分时,company 的值为 Nothing,这就是导致失败的原因

我在 FK 关系中缺少什么?company 的先前值设置为进入 UpdateModel 的正确值,但未设置当前值。如果我手动设置每个属性(e.firstname = request("firstname") 等)并在 dataRepository 上调用我的保存方法或删除关系并使用 UpdateModel,则一切正常。我宁愿使用 UpdateModel,因为它可以使代码更清晰等。对于冗长的帖子感到抱歉,但这让我发疯了。有任何想法吗?

顺便说一句,我不是要更改 FK,只是简单地更新员工姓名。

0 投票
1 回答
419 浏览

asp.net-mvc - 用于更新子表的 ASP.NET 模型活页夹问题

我在 ASP.NET MVC 应用程序中使用 Linq to SQL。该模型由一个带有指向选项表的外键链接的决策表组成(一个决策,许多选项)。因此,模型允许我通过 Decision.Options 属性访问 Options 集合。我想允许我的用户在更新其他决策属性的单独视图中更新决策的选项集合。将 Options 集合传递回控制器以更新 Decision 对象的最佳方法是什么?这是代码:

控制器将决策模型发送到选项视图:

我的视图页面只列出了选项的名称字段供用户修改和提交:

这是 Options POST 操作的控制器代码:

在选项的 POST 操作中,传回选项项集合的最佳方法是什么?

在调用 Save 方法之前,我尝试直接使用 FormCollection 转换为 EntitySet 以分配给 Decision.Options 。上面的代码传入了 Decision 对象,但 Options 集合始终为 null,因此我注释了 TODO。

我已经让它用于直接编辑决策对象,但是在使用模型绑定器或 FormCollection 更新模型中的子表时遇到问题。任何帮助是极大的赞赏!

0 投票
2 回答
2189 浏览

asp.net-mvc - 名称不匹配时的 MVC UpdateModel

假设您有一个看起来像这样的模型:

Visual Studio 为您提供的默认编辑模板是MyDate属性的纯文本框。这一切都很好,但是假设您需要将其拆分为月/日/年组件,您的表单如下所示:

提交后,调用UpdateModel将不起作用,因为没有MyDate-Month. 有没有办法向项目添加自定义活页夹来处理这样的情况,或者如果 HTML 输入的名称不同(无论出于何种原因)?

我发现的一种解决方法是在提交之前使用 JavaScript 将隐藏的输入注入表单,该输入连接字段并正确命名,但这感觉不对。

0 投票
1 回答
1153 浏览

asp.net - 似乎无法让 IncludeProperties 在 ASP.NET MVC 中的 UpdateModel 上工作

有没有人有这运气?

如果我理解正确,请告诉我,如果我有一个简单的模型,让我们说:

然后我执行:

这应该更新名称和详细信息属性吗?因为假设'created'中已经有一个来自db的日期,所以当我执行上述操作时,它似乎将我的创建日期从原始日期设置为01-01-0001。

此外,当我尝试使用以下命令明确排除该字段时:

它仍被设置为 01-01-0001。这是一个错误,还是我做错了什么奇怪的事情?

我实际上想要做的是更新我的模型属性,其中有相应的表单字段,但保留其余部分,这些属性是从 db fetch 单独设置的,而不是将它们设置为 null 或默认值,这是它目前的似乎在做。

不过我会说,也许上面和我的真实场景之间的唯一区别是我在列表上使用 updateModel,所以我有效地获取 listFromDb(parentId) 然后在选择的那个上应用 updateModel(myList, "ListPrefix")将每个项目按 [0]、[1] 等...它有效,因为所有名称都在更新,但其他一切都没有。

更新:我刚刚意识到“includeProperties”可能是定义您希望从表单中包含哪些属性,类似于绑定的工作方式。如果*是*这种情况,那么我怎么能告诉它只更新某些模型属性呢?

0 投票
3 回答
637 浏览

c# - ASP.NET MVC:UpdateModel 是一个“昂贵”的操作(由于反射)吗?

我想知道 UpdateModel 是否被认为是“昂贵的”操作(由于模型属性的反射查找),尤其是在更大的 Web 应用程序的上下文中看到时(想想 StackOverflow)?

我不想进行过早的优化,但我认为使用 UpdateModel 是一种设计选择,这就是为什么我想及早知道是否建议使用它。另一个(乏味的)选择是为具有固定属性的各种域对象编写我自己的 UpdateModel 方法。

谢谢!

0 投票
3 回答
5797 浏览

asp.net-mvc - 使用复杂数据类型的集合调用 UpdateModel 会重置所有非绑定值吗?

我不确定这是 DefaultModelBinder 类中的错误还是什么。但是 UpdateModel 通常不会更改模型的任何值,除了它找到匹配的值。看看以下内容:

发生的情况是 UpdateModel 创建新的Person 对象,从 ValueProvider 分配它们的 Name 和 Age 属性并将它们放入参数 List<> 中,这使得其余属性设置为其默认初始值(例如 Id = 0)所以什么是在这里进行吗?