Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 仅将viewmodel的几个部分保存到db_C#_Asp.net Mvc_Asp.net Mvc Viewmodel - Fatal编程技术网

C# 仅将viewmodel的几个部分保存到db

C# 仅将viewmodel的几个部分保存到db,c#,asp.net-mvc,asp.net-mvc-viewmodel,C#,Asp.net Mvc,Asp.net Mvc Viewmodel,我有一个viewmodel,我想根据一些条件跳过我正在保存的部分细节,我无法找到不重复代码的方法(我知道这是一个糟糕的做法) 我需要做的是根据用户的选择向模型主题(SubjectId)(good | | | bad | | | ught)+1添加项目,因此在最后我将有:主题名称和(X good,X bad,X ught) 我想代码会帮助我更好地解释自己 //subject table is one-to-many i need to add only the "grade" in case t

我有一个viewmodel,我想根据一些条件跳过我正在保存的部分细节,我无法找到不重复代码的方法(我知道这是一个糟糕的做法) 我需要做的是根据用户的选择向模型主题(SubjectId)(good | | | bad | | | ught)+1添加项目,因此在最后我将有:主题名称和(X good,X bad,X ught) 我想代码会帮助我更好地解释自己

 //subject table is one-to-many i need to add only the "grade" in case the subject name already exists 
 if (model.rev.GBU == "Good")
 {
      model.sub.Good = +1;
 }
 else if (model.rev.GBU == "Bad")
 {
      model.sub.bad = +1;
 }
 else if (model.rev.GBU == "Ugly")
 {
      model.sub.Ugly = +1;
 }

 //checked if the subject name is already in the db
 var subjectNameQuery = db.Subject.Where(n => n.SubjectName.ToLower().Equals(model.sub.SubjectName));
 if (subjectNameQuery.Count() > 0)
 {
      //if the name is in the table, do Not add it again
      model.rev.SubjectId = subjectNameQuery.SingleOrDefault().SubjectId;
 }
 else
 {
      db.Subject.Add(model.sub);
 }

当你说“跳过相同部分的细节”时,你到底是什么意思?您是否正在尝试将
model.rev
更新到数据库,而不是
model.sub
?对不起,我不完全确定你想问什么。我已经更新了我的Q,我希望它现在更清楚。你的问题现在更清楚了,谢谢。我不完全清楚为什么要将
model.rev
对象的
subjectNameQuery.SingleOrDefault().SubjectId设置为
SubjectId
变量?查看-这可能会帮助您更新特定记录。当您说“跳过相同部分的详细信息”时,您的确切意思是什么?您是否正在尝试将
model.rev
更新到数据库,而不是
model.sub
?对不起,我不完全确定你想问什么。我已经更新了我的Q,我希望它现在更清楚。你的问题现在更清楚了,谢谢。我不完全清楚为什么要将
model.rev
对象的
subjectNameQuery.SingleOrDefault().SubjectId设置为
SubjectId
变量?查看-这可能有助于您更新特定记录。