问题标签 [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.
c# - 实体是否应该访问服务层并执行更新/保存方法?
我的应用程序要求:如果用户更改了任何属性 - 例如将数据输入文本框然后离开文本框 - 它必须立即更新到数据库。
我使用带有 MVVM 设计模式的 WPF。我所有的实体都实现了INotifyPropertyChanged
. 如果客户的任何财产发生变化,我会
实体真的应该自我更新吗?还是将它自己的更新引入数据库?
我的意思是,如果不在实体内,我还能如何立即更新财产?
asp.net-mvc - MVC 3 Master / Detail UpdateModel 插入新的详细记录而不是更新现有记录
好的,我已经阅读了 Phil Haack 关于绑定到列表的文章,并且我在一个视图上运行良好。但是当我从主记录中做这件事时,我被卡住了。
我有这个对象的一个非常简单的表格
表单集合带有预期的前缀:
并且 Controller.UpdateModel(master) 正确绑定了所有属性。但是当我调用 dbContext.SaveChanges 时,它会从 sql profiler 发出以下 sql(伪代码)
我有一个可行的解决方法,但它非常hackish,我目前没有匹配密钥,所以它依赖于以正确顺序返回的所有内容。另外,我必须包含我想要更新的所有字段。
我有一种感觉,UpdateModel 以某种方式删除并重新添加了孩子。
有没有其他人让这个工作?当然,我可以认输并自己解析索引字段名称,但我已经很接近了!
asp.net-mvc-3 - mvc3 razor 下拉列表导致更新模型失败
我对以下代码有疑问。基本上,当我调用 updatemodel 时它会失败,但我没有得到内部异常。如果我将下拉菜单更改为文本框,它可以工作。
班级:
控制器方法:
最后是cshtml代码:
当我单击保存按钮时,updatemodel 行失败。如上所述,如果我使用文本框作为性别,它不会失败。有谁知道是什么导致它失败或如何调试它?
asp.net - 在 MVC 3 应用程序中更新模型子集合?
这是困扰我一段时间的更大问题的一部分(请参阅“EntityCollection 已初始化”错误,在 Asp.Net MVC 中将实体作为模型?对于整个图片)。
但是我找到了一个网站,其中有人遇到了类似的问题,显然解决了他的需要(见http://codeblog.shawson.co.uk/creating-an-order-order-details-style-form-using -asp-net-mvc2-entity-framework/)。我试过了,但必须进行一些修改以适应我的代码,以及 Steven Sanderson 的教程提供的辅助方法(参见上一篇文章)。
我似乎非常接近,但并不完全:
尽管这遵循了上面网站上的示例,并且 modelProgram 确实使用更改的属性进行了更新,但这些值不会保存到 Consultant 对象的 _repository.Save() 上的数据库中,即使 modelProgram 对象是对顾问上的程序对象...我做错了什么?
顺便说一句,如果不清楚,我正在使用实体框架。
(顺便说一句,如果有人对上一个问题和整个图片有任何意见,那也将受到欢迎,但仍未解决)。
请帮忙,我对 MVC 失去了信心,我最近对此感到非常兴奋......
更新:这里显然有一个错误:UpdateModel 实际上并没有进行任何更新,我只是为 modelProgram 引用了一个不同的对象(视图模型中的那个),所以它当然具有正确的属性值。我仍然想要关于如何实现这一目标的想法......
asp.net-mvc - UpdateModel 无法使用模拟表单集合值返回正确的结果
我有两个调用控制器的测试方法:
这个通过了:
这个失败了:
控制器中的动作结果是
但是,try-catch 块永远不会捕获异常(“IM_Paper.Year”应该是一个 int)。所以控制器总是将 Action 结果作为 RedirectToAction 返回。即使是第一个,内存中的数据也没有改变。
你知道为什么会这样吗?对于“IM_Paper”类,我使用 POCO 生成器并从实体框架生成。该类如下所示:
exception - ASP.NET MVC3:TryUpdateModel 引发异常
我有一个接受以下模型的视图:
这将返回到以下操作:
但是,在回发时会引发以下异常:
无法将“System.Int32”类型的对象转换为“System.String”类型。
说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.InvalidCastException:无法将“System.Int32”类型的对象转换为“System.String”类型。
源错误:
虽然我不能在这里突出显示,但异常发生在第 137 行。我无法进入此方法,那么如何确定导致此异常的原因?
另外,TryUpdateModel不应该让我免受任何异常的影响,只是返回true或false来反映结果吗?我不知道它可能会引发异常。
更新:这是模型(派生和基础):
基本类型是一个实体,我能想到的显示它的最好方法是显示它背后的 XML:
然后有一个伙伴类来扩展它:
最后,这是视图的相关部分:
c# - ASP.NET MVC 更新模型不起作用?
我想更新一个客户端类型的实体。
服务返回客户端类型实体。客户端具有以下属性:用户名、名字、姓氏、ID - 这些是提交集合中的键。
此外,客户端实体有一个订单列表(由 SQL Metal 添加)以及一个用于对象跟踪的版本字段。
当 UpdateModel 行被命中时,它不会出错,但对象 c 中的值不会得到更新。问题不在于service.Update(c)
,而在于UpdateModel(c, "Client")
。
我究竟做错了什么?
谢谢
编辑: 客户端由 SQL 金属映射。
其属性如下:
- 整数 ID
- 字符串用户名;
- 字符串名字;
- 字符串姓氏;
- 时间戳版本
- 可查询的订单;
错误(内部异常为空)
asp.net-mvc-3 - UpdateModel 不通过 ViewModel 和 DropDownListFor 的属性更新模型
我正在尝试设置一个编辑视图,在该视图上我有一个文本框和 DropDownListFor。我已经找到了一种填充 DDLF 的方法,并且渲染和发布的值是正确的,但我似乎无法让模型正确更新。
我试图更新的对象是从 LINQtoSQL 生成的,并且在数据库中它具有外键列。在导致“包含”关系的 LINQtoSQL 类中。我可以访问代表 DB 中的列的 ID 属性,以及它代表的对象。
我想出进行更新的唯一方法是从 DDLF 获取值并使用它来获取我想要更改的对象,如下所示:
此外,当我尝试像这样更新 ID 字段时,我得到以下错误:
错误:抛出新的 System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
在我看来,这样做是非常糟糕的方式,我正试图让 UpdateModel 工作。
asp.net-mvc - 绑定到 ViewModel 时如何更新模型?
我有一个这样的[HttpPost]
动作方法签名:
现在,在过去(当我不使用 ViewModel,例如 R&D 时),我有一个这样的Edit方法的实现:
效果很好。
但我很困惑如何使上述内容适应 ViewModel 方法。
如果我这样做:
使用我的 ViewModel 方法,不会发生太多事情。没有错误,但没有更新,因为 MVC 不知道如何Post
从 a 更新 a ExistingPostViewModel
(之前是Post
-> Post
)。
现在,我正在使用 AutoMapper。所以我想我可以从 ViewModel 映射到Post
,然后保存帖子。
但后来我基本上压倒了一切。我不想这样做并且破坏了削减 ViewModel 的要点。
谁能解惑我?
这似乎是一个非常常见的场景,我完全不知道人们如何解决这个问题。我只能看到 3 种可能的解决方案:
不要在 HTTP POST 中使用 ViewModel。正如我所说,我过去是为研发而这样做的,它确实有效,但现在我看到了我的视图是如何演变的(验证、简单),我不能仅仅为了这个问题而妥协。
不要使用 TryUpdateModel。可能,但是我将如何合并更改?
使用从左到右。啊。但目前这似乎是我倾向于的方式。
有人请给我解决方案#4!:)
顺便说一句,我正在使用 ASP.NET MVC 3、Razor 和实体框架。
asp.net-mvc - 无法使用 mvc 中的文件上传更新图像
我正在尝试更新已经更新到数据库的文本和图像。我有一个管理部分,其中有一个新闻菜单,用户可以在其中编辑和更新带有图像的新闻。问题是我可以编辑和更新新闻文本,但图像没有更新。下面是控制器和视图: