Есть ли способ, чтобы EF и WebAPI2 обновляли только передаваемые поля в списке какого-либо объекта класса? - PullRequest
0 голосов
/ 31 октября 2019

У меня есть класс с именем User, и я передаю один из методов WebAPI2, скажем, Manage (запрос UsersList), т.е. UsersList - это список класса User в качестве входного параметра, для которого я буду выполнять операцию вставки, обновления на основе действия i. с каждым объектом класса User.

i wanted to know if i will pass only fields for those i wanted to get updated in the database and not the all fields of User class, because User class contains almost 70 columns and i don't want to pass the fields that does not going to change/update.

public void ManageUsers(UsersList request)
    {
     List<Users> users = request.requestData;
     for (int i = 0; i < users.Count; i++)
     {
       if (users[i].action == "UPDATE")
       {
          // update operation
          // i just wanted to change say "Status" field of User only
          // currently it is updating the whole user object with null values   
          //except Status because Status field is what i am passing with user  
          //object.
       }
     }
    }

мой класс пользователя выглядит ниже

 public class Users
        {
            public string action { get; set; }
            public string userid { get; set; }
            public string name { get; set; }
            public string addr1 { get; set; }
            public string addr2 { get; set; }
            public string title { get; set; }
            public string status { get; set; }
    }

, а тело почтальона выглядит ниже

{
      "requestData": [
        {
          "action": "UPDATE",
          "userid": "524",
          "status":"Active"      
        },
        {
          "action": "UPDATE",
          "userid": "552",
          "name":"Walters"
        },
        {
          "action": "UPDATE",
          "userid": "331",
          "addr1":"Address line 1 cntct",
          "status": "Disabled"
        }
      ]
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...