在asp.net中验证字符串是否为json
有没有办法验证字符串是否为json?除了尝试/抓住在asp.net中验证字符串是否为json,asp.net,json,
servicestack,Asp.net,Json,
servicestack,有没有办法验证字符串是否为json?除了尝试/抓住 我正在使用ServiceStack Json序列化程序,找不到与验证相关的方法。您可以在这里找到几个正则表达式来验证Json: 它是用PHP编写的,但应该适用于C#。最快、最脏的方法可能是检查字符串是否以'{'开头: public static bool IsJson(string input){ input = input.Trim(); return input.StartsWith("{") && in
我正在使用ServiceStack Json序列化程序,找不到与验证相关的方法。您可以在这里找到几个正则表达式来验证Json:
它是用PHP编写的,但应该适用于C#。最快、最脏的方法可能是检查字符串是否以'{'开头:
public static bool IsJson(string input){
input = input.Trim();
return input.StartsWith("{") && input.EndsWith("}")
|| input.StartsWith("[") && input.EndsWith("]");
}
另一个选项是,您可以尝试使用JavascriptSerializer类:
JavaScriptSerializer ser = new JavaScriptSerializer();
SomeJSONClass = ser.Deserialize<SomeJSONClass >(json);
JavaScriptSerializer ser=newJavaScriptSerializer();
SomeJSONClass=ser.Deserialize(json);
或者您可以看看JSON.NET:
该解决方案的可能重复使用try/catch。我正在寻找类似TryParse的方法,我们用于int、date等。只是为了检查字符串是否包含有效的json结构,或者不可能重复
public bool isValidJSON(String json)
{
try
{
JToken token = JObject.Parse(json);
return true;
}
catch (Exception ex)
{
return false;
}
}