c#에서 동적으로 Json 생성
열을 루프하여 동적으로 Json 개체를 만들어야 합니다.따라서 빈 json 객체를 선언한 후 동적으로 요소를 추가합니다.
예:
List<String> columns = new List<String>{"FirstName","LastName"};
var jsonObj = new {};
for(Int32 i=0;i<columns.Count();i++)
jsonObj[col[i]]="Json" + i;
그리고 마지막 json 객체는 다음과 같습니다.
jsonObj={FirstName="Json0", LastName="Json1"};
[TestFixture]
public class DynamicJson
{
[Test]
public void Test()
{
dynamic flexible = new ExpandoObject();
flexible.Int = 3;
flexible.String = "hi";
var dictionary = (IDictionary<string, object>)flexible;
dictionary.Add("Bool", false);
var serialized = JsonConvert.SerializeObject(dictionary); // {"Int":3,"String":"hi","Bool":false}
}
}
DPeden과 매우 유사한 솔루션을 찾았습니다. IDirectionary를 사용할 필요는 없지만, DPeden에서 직접 통과할 수 있습니다.ExpandoObject
JSON 변환:
dynamic foo = new ExpandoObject();
foo.Bar = "something";
foo.Test = true;
string json = Newtonsoft.Json.JsonConvert.SerializeObject(foo);
출력은 다음과 같습니다.
{ "FirstName":"John", "LastName":"Doe", "Active":true }
를 사용해야 합니다.JavaScriptSerializer
실제 타입을 JSON으로 시리얼화할 수 있습니다.
참고 자료: http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx
편집: 이런 거?
var columns = new Dictionary<string, string>
{
{ "FirstName", "Mathew"},
{ "Surname", "Thompson"},
{ "Gender", "Male"},
{ "SerializeMe", "GoOnThen"}
};
var jsSerializer = new JavaScriptSerializer();
var serialized = jsSerializer.Serialize(columns);
출력:
{"FirstName":"Mathew","Surname":"Thompson","Gender":"Male","SerializeMe":"GoOnThen"}
사용.dynamic
그리고.JObject
dynamic product = new JObject();
product.ProductName = "Elbow Grease";
product.Enabled = true;
product.StockCount = 9000;
Console.WriteLine(product.ToString());
// {
// "ProductName": "Elbow Grease",
// "Enabled": true,
// "StockCount": 9000
// }
또는 다음과 같은 경우:
JObject obj = JObject.FromObject(new
{
ProductName = "Elbow Grease",
Enabled = true,
StockCount = 9000
});
Console.WriteLine(obj.ToString());
// {
// "ProductName": "Elbow Grease",
// "Enabled": true,
// "StockCount": 9000
// }
https://www.newtonsoft.com/json/help/html/CreateJsonDynamic.htm
언급URL : https://stackoverflow.com/questions/10252675/create-json-dynamically-in-c-sharp
'programing' 카테고리의 다른 글
Oracle 페이징을 위한 LIMIT 및 OFFSET 대체 방법 (0) | 2023.04.05 |
---|---|
angularjs 페이지의 RESTful API에서 서비스에 액세스하는 방법은 무엇입니까? (0) | 2023.04.05 |
Angular에서 특정 템플릿을 재정의할 수 있습니까?UI 부트스트랩? (0) | 2023.04.05 |
Oracle 데이터베이스를 사용하는 이유는 무엇입니까? (0) | 2023.04.05 |
형식 스크립트를 컴파일할 때 'tsc 명령어를 찾을 수 없습니다' (0) | 2023.04.05 |