将JsonBody移动到其他类文件

时间:2019-05-16 12:23:52

标签: c# json

我正在尝试将jsonBody对象移动到另一个类文件,但是当我从另一个类调用该方法时,json属性无法正确传递 有什么解决方法的想法吗?

这就是我要尝试的。

public void WhenIPerformPostOperatiom(string url, Table table) {
 string productId = "11234";
 _settings.Request = new RestRequest(url, Method.POST);

     JsonObjects jsonBody = new JsonObjects();
     jsonBody.AQuestions(productId, table);

 _settings.Request.AddJsonBody(jsonBody);
}

和对象。

public class JsonObjects
    {
       public void AQuestions(string productId,Table table)
        {
            dynamic data = table.CreateDynamicInstance();
            var jsonBody = new AccountRoot()
            {
                productId = productId,
                questions = new[]
                  {
                       new Questions() {
                        questionId = "b2b-2.01",
                        question ="Q1",
                        answers = new []
                        {
                            new Answers(){
                            answerValue = data.answerValue1
                            }
                        }
                    }
            }
        };
    }
}

1 个答案:

答案 0 :(得分:1)

如果要在调用data之后访问它们,则需要设置jsonBodyAQuestions(...)成员变量。 jsonBody的类型可以是对象,如果您希望它保留任何类型的话……但是除了存储要通过反射遍历的数据之外,这使得它很难用于其他任何用途……

public class JsonObjects
{
    public dynamic data;
    public AccountRoot jsonBody;

    public void AQuestions(string productId,Table table)
    {
        data = table.CreateDynamicInstance();
        jsonBody = new AccountRoot()
        {
            productId = productId,
            questions = new[]
            {
                new Questions() 
                {
                    questionId = "b2b-2.01",
                    question ="Q1",
                    answers = new []
                    {
                        new Answers()
                        {
                            answerValue = data.answerValue1
                        }
                    }
                }
            }
        };
    }
}