假设我有以下内容:
var b = true;
var f = "{ \"templateName\": \"name\", \"Active\": \"" +b + "\"}";
那个b值对我不起作用:(我尝试了不同的场景而没有运气。
答案 0 :(得分:3)
这样做的正确方法是直接使用对象。然后你可以序列化到你想要的任何格式(如果你想要JSON,你应该使用JSON.NET)。
例如,你应该有一个类似 的类:
public class TestClass
{
public bool Active { get; set; }
public string TemplateName { get; set; }
}
这是一个代表你的JSON对象的类,但是我们只是处理对象而不是修改字符串并解决这个问题。
在您的代码中,您可以实例化和/或修改该对象的实例:
var testObj = new TestClass()
{
Active = true,
TemplateName = "SomeName"
};
//changed my mind, I want Active to be false now
testObj.Active = false;
然后利用JSON.NET的强大功能,您可以将此对象序列化为JSON:
string jsonString = JsonConvert.SerializeObject(testObj);