此代码具有创建、更新、插入和删除功能,现在我只想更新以返回 Postman 中的字符串正文

问题描述 投票:0回答:1

Create 在邮递员中返回一个正常工作的 Id 值,但现在我在我的主体中做了一些更改,例如

first_name: "azib"
first_name: "faizan"
,所以我希望它返回
first_name
的更新主体,而不是只保留返回 Postman 内部的 id。为什么这样做以及如何解决它?

namespace GSWebAPI
{
    public static class PardotUtilities
    {
        public static string  Create(string param)
        {
            var client = new RestClient("https://pi.pardot.com/api/prospect/version/4/do/create/id/" );
            var request = new RestRequest(Method.POST);
          

            request.AddHeader("accept", "application/json");
            request.AddHeader("content-type", "application/x-www-form-urlencoded");
            request.AddParameter("application/x-www-form-urlencoded",param+GetApiKey(), ParameterType.RequestBody);
            IRestResponse response = client.Execute(request);
           var xml = response.Content;
            XmlDocument xd = new XmlDocument();
            xd.LoadXml(xml);
            var ids = XDocument.Parse(xml).Element("rsp").Element("prospect").Element("id").Value;
            return  ids;
        }
        public static string Update(string param, string id)
        {
            var client = new RestClient("https://pi.pardot.com/api/prospect/version/4/do/update/id/" + id);
            var request = new RestRequest(Method.POST);
            request.AddParameter("api_key", GetApiKey());

            request.AddHeader("accept", "application/json");
            request.AddHeader("content-type", "application/x-www-form-urlencoded");
            request.AddParameter("application/x-www-form-urlencoded", param+GetApiKey(), ParameterType.RequestBody);
            IRestResponse response = client.Execute(request);
            var xml = response.Content;
            XmlDocument xd = new XmlDocument();
            xd.LoadXml(xml);
            var ret = XDocument.Parse(xml).Element("rsp").Element("prospect").Element("id").Element("email").Element("first_name").Element("last_name").Element("phone");
            return ret.ToString();
         
        }

//第二节课从这里开始...

 public class CampainProspectsController : ApiController
    {

        [HttpPost]
        public IHttpActionResult Post([FromBody] JToken Value)
        {
            string tocreate = "";
            string toupdate = "";
            Prospects res = new Prospects();
            res.Error = "";
            res.Status = "";

            var results = JsonConvert.DeserializeObject<Prospects>(Value.ToString());
            if (results != null)
            {
                // results
                results.id = Guid.NewGuid().ToString();
                tocreate = "first_name=" + results.first_name + "&last_name=" + results.last_name + "&email=" + results.email + "&phone=" + results.phone + "&id=" + results.id;
                var idstr = PardotUtilities.Create(tocreate);
                return Ok(idstr);
            }
            if (tocreate == results.id) {
                results.id = Guid.NewGuid().ToString();
                toupdate = "first_name=" + results.first_name + "&last_name=" + results.last_name + "&email=" + results.email + "&phone=" + results.phone + "&id=" + results.id;
                var update = PardotUtilities.Update(toupdate, results.id);
                return Ok(update);
            }
                PardotUtilities.Upsert(tocreate, results.id);

                PardotUtilities.Query(tocreate, results.id);
                PardotUtilities.Delete(tocreate, results.id);
            // return Ok(update);

            return Ok();
        }
            
        }
        //public class 

        public class Prospects
        {

            public String Status { get; set; }
            public String Error { get; set; }

            public string id { get; set; }
            public string email { get; set; }
            public string first_name { get; set; }
            public string last_name { get; set; }
            public string password { get; set; }
            public string company { get; set; }
            public string website { get; set; }
            public string job_title { get; set; }
            public string department { get; set; }
            public string contry { get; set; }
            public string address_one { get; set; }
            public string address_two { get; set; }
            public string city { get; set; }
            public string state { get; set; }
            public string territory { get; set; }
            public string zip { get; set; }
            public string phone { get; set; }
            public string fax { get; set; }
            public string source { get; set; }
            public string annual_revenue { get; set; }
            public string employees { get; set; }
            public string industry { get; set; }
            public string years_in_business { get; set; }
            public string comments { get; set; }
            public string notes { get; set; }
            public string score { get; set; }
            public string grade { get; set; }
            public string last_activity_at { get; set; }
            public string recent_interaction { get; set; }
            public string crm_lead_fid { get; set; }
            public string crm_contact_fid { get; set; }
            public string crm_owner_fid { get; set; }
            public string crm_account_fid { get; set; }
            public string salesforce { get; set; }
            public string crm_last_sync { get; set; }
            public string crm_url { get; set; }
            public string is_do_not_email { get; set; }
            public string is_do_not_call { get; set; }
            public string opted_out { get; set; }
            public string is_reviewed { get; set; }
            public string is_starred { get; set; }
            public string created_at { get; set; }
            public string updated_at { get; set; }









            public List<ProspectFields> updateableField { get; set; }

        }


    }


    /// <remarks/>
    [System.SerializableAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = false)]
    public partial class prospect
    {

        private uint idField;

        private byte campaign_idField;

        private object salutationField;

        private string first_nameField;

        private string last_nameField;

        private string emailField;

        private object passwordField;

        private string companyField;

        private object websiteField;

        private object job_titleField;

        private object departmentField;

        private object countryField;

        private object address_oneField;

        private object address_twoField;

        private object cityField;

        private string stateField;

        private object territoryField;

        private object zipField;

        private object phoneField;

        private object faxField;

        private object sourceField;

        private object annual_revenueField;

        private object employeesField;

        private object industryField;

        private object years_in_businessField;

        private object commentsField;

        private object notesField;

        private byte scoreField;

        private object gradeField;

        private object last_activity_atField;

        private string recent_interactionField;

        private object crm_lead_fidField;

        private object crm_contact_fidField;

        private object crm_owner_fidField;

        private object crm_account_fidField;

        private object salesforce_fidField;

        private object crm_last_syncField;

        private object crm_urlField;

        private object is_do_not_emailField;

        private object is_do_not_callField;

        private object opted_outField;

        private object is_reviewedField;

        private object is_starredField;

        private string created_atField;

        private string updated_atField;

        private prospectCampaign campaignField;

        private prospectProfile profileField;

        private object visitorsField;

        private object visitor_activitiesField;

        private object listsField;
c# postman return
1个回答
0
投票

因为服务器代码明确表示要返回

Ok(idstr);
,而
idstr
PardotUtilities.Create(tocreate);
的返回值,我想这是一个id值。

© www.soinside.com 2019 - 2024. All rights reserved.