2013-05-19 64 views
1

我需要的,进出口使用asp.net mvc的用C#来验证从服务器端JSON文件,所以我在我的控制器有这样的方法C#:从用户输入的Json验证

public ActionResult Validate(HttpPostedFileBase jsonFile) 
    { 
     bool validJson = false; 
     var serializer = new JavaScriptSerializer(); 

     try 
     { 
      var result = serializer.Deserialize<Dictionary<string, object>>(How should I pass the json file here ??); 
      validJson = true; 
     } 
     catch(Exception ex) 
     { 
      validJson = false; 
     } 

    } 

这是最好的方式为验证呢? ...对不起,但我不知道如何通过json字符串参数,我已经尝试使用jsonFile.InputStream.ToString(),jsonFile.tostring() ...它需要什么?,json用户的路线? ...在此先感谢

回答

1

那么如何对这样的事情:

using (var reader = new StreamReader(jsonFile.InputStream)) 
{ 
    string jsonData = reader.ReadToEnd(); 
    var serializer = new JavaScriptSerializer(); 

    var result = serializer.Deserialize<Dictionary<string, object>>(jsonData); 
    // dragons be here ... 
} 
+1

这是所有我需要的,谢谢你这么多。 :) – Steve

+0

很高兴我能帮助:) –

+0

你能向我解释请,为什么使用后** **命令,我尝试保存我的文件和It's空,验证JSON后,我需要保存在数据库的一些记录和毕竟,救我的文件。但它只在内部使用,并且在它之后需要它...谢谢 – Steve