2013-05-19 116 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