читать данные json из текстового файла в соответствии с моими условиями

вот мой текстовый файл jason, содержащий более двух объектов json, имеющих разные policyNumber. Я хочу прочитать данные на основе policyNumber или может быть другим значением, и он показывает только те json-объекты, имеющие те же параметры, которые я запрашиваю, или говорю тот же номер политики, который я отправил им. Я работаю над API, поэтому понятия не имею об этом, и я также более свежий в этой области, не знаю, как возвращать значения. пожалуйста, руководство и спасибо заранее, мой текстовый файл jason содержит

      {
  "jsonData": {
    "PolicyValue": {
      "PolicyNumber": "003",
      "EffectiveDate": "2022-09-14",
      "MCV_NetBaseCashValue": 9700,
      "Dividend": 0,
      "DividendsInterest": 0,
      "CouponBalance": 0,
      "CouponBalancesInterest": 0,
      "BaseCashValue": 700,
      "CashSurrenderValue": 00,
      "APLAmount": 0,
      "APLAmountsInterest": 0,
      "OPLAmount": 0,
      "OPLAmountsInterest": 0,
      "MiscellaneousSuspense": 0,
      "PremiumSuspense": 0,
      "OutstandingDisbursement": 0,
      "SurrenderCharge": 0
    }
  },
  "reponseCode": "00",
  "reponseMessage": ""
}

{
  "jsonData": {
    "PolicyValue": {
      "PolicyNumber": "123",
      "EffectiveDate": "2022-08-17",
      "MCV_NetBaseCashValue": -100,
      "Dividend": 0,
      "DividendsInterest": 0,
      "CouponBalance": 0,
      "CouponBalancesInterest": 0,
      "BaseCashValue": 100,
      "CashSurrenderValue": -100,
      "APLAmount": 0,
      "APLAmountsInterest": 0,
      "OPLAmount": 0,
      "OPLAmountsInterest": 0,
      "MiscellaneousSuspense": 0,
      "PremiumSuspense": 0,
      "OutstandingDisbursement": 0,
      "SurrenderCharge": 200
    }
  },
  "reponseCode": "00",
  "reponseMessage": ""
}

это мой первый файл и мой второй файл

      { 
 "jsonData": {   
 "PolicyNumber": "354",  
  "PolicyCommencementDate": "2020-07-31",  
  "InsuranceDetails": [ {       

 "PolicyNumber": "54",     
   "ClientID": "04",    
    "InsuredFirstName": "LEÄ",     
   "InsuredLastName": "HAÈNG",    
    "InsuredDOB": "1978-01-01"    
  },    

  {     
   "PolicyNumber": "54",    
    "ClientID": "09",    
    "InsuredFirstName": " YEÂN",      
  "InsuredLastName": "NG",    
    "InsuredDOB": "2006-11-08"    
  } ]

  }, 
 "reponseCode": "00",  "reponseMessage": ""

 }
{
  "jsonData": {
    "PolicyNumber": "737",
    "PolicyCommencementDate": "2019-07-25",
    "InsuranceDetails": [
      {
        "PolicyNumber": "37",
        "ClientID": "15",
        "InsuredFirstName": "N HAÛI",
        "InsuredLastName": "ANH",
        "InsuredDOB": "1989-10-04"
      },
      {
        "PolicyNumber": "37",
        "ClientID": "25",
        "InsuredFirstName": "NH",
        "InsuredLastName": "AÁN",
        "InsuredDOB": "1988-01-04"
      },
      {
        "PolicyNumber": "37",
        "ClientID": "26",
        "InsuredFirstName": "RUÙC",
        "InsuredLastName": "DNG",
        "InsuredDOB": "2021-05-17"
      }
    ]
  },
  "reponseCode": "00",
  "reponseMessage": ""
}

я хочу подать заявку на основе запроса на получение, пожалуйста, решите эту проблему как можно скорее

я проверил этот код в своем контроллере значений

        public class ValuesController : ApiController
    {
        string[] fileConten = Directory.GetFiles(HostingEnvironment.MapPath(@"~/Documents/V1/policy/seachpolicy"));
           public string Get()
        {

            string writeResult = string.Empty;
            string strr = File.ReadAllText(fileConten[2]);
            JObject jsonObj = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(strr);

            var jobj = JObject.Parse(jsonObj.ToString());
            
            foreach (var item in jobj.Properties())
            {
                item.Value = item.Value["PolicyNumber"].ToString();
                //item.Value = item.Value.SelectToken["PolicyValue"][0]["PolicyNumber"].ToString();
                //item.Value = item.Value["PolicyNumber"][0]["InsuranceDetails"]["InsuredFirstName"].ToString();
                int nm = Convert.ToInt32(item.Value);
                if (nm == 008019354)
                {
                    writeResult = jobj.ToString();
                    break;
                }
                break;
                //item.Value = item.Value.ToString().Replace("0", "1");
            }
           
            return writeResult;
          




           

            string output = Newtonsoft.Json.JsonConvert.SerializeObject(jsonObj, Newtonsoft.Json.Formatting.Indented);
            return output;
                
            
    this code not work properly      

     








         
        }

0 ответов

Другие вопросы по тегам