首页 新闻 会员 周边

关于Entity Framwork View 和Controller传参 的一个问题

0
悬赏园豆:15 [已解决问题] 解决于 2012-08-16 12:22

    今天发现一个问题,我用model从视图层【Edit.cshtml】给Controller传参,然后controller对数据库进行更新,但是我发现,如果某一项属性值没有从视图层传过来,数据库更新后的内容这一项就会被置为空。

    可是,有些时候我们并不像改动某些数据项,那么,这些数据项自然不会用@Html.EditorFor()进行显示。后来我想了一个办法,就是用@Html.Hidden()来保存参数,让参数回传,覆盖原值。可是我觉得这不是个好办法,如果属性是password,这样似乎不是很安全。

    所以我想问问大家,怎样才能不用回传参数(不需要修改的),而数据库也不会将之设置为空?

(我是新手,园豆不多,大家见谅)

akangmaker的主页 akangmaker | 初学一级 | 园豆:163
提问于:2012-08-15 23:07
< >
分享
最佳答案
0

我有一个想法,可以试一下。

在Controller里面,先从数据库里面获取某个User的实体,然后用新的Edit页面传过来的User模型加上老的User实体中的OtherThins字段,就可以用来构造一个新的User实体了,然后用Entity Framework的方法来更新这条User记录。

收获园豆:15
bevisliu | 菜鸟二级 |园豆:278 | 2012-08-15 23:27

嗯,我觉得可以,不过这样的话,似乎就要增加数据库的操作了

akangmaker | 园豆:163 (初学一级) | 2012-08-15 23:40
其他回答(1)
0

MVC + Entity Framework

jerry-Tom | 园豆:4077 (老鸟四级) | 2012-08-16 10:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册