2010-07-27 38 views
1

我有這樣的WCF服務的ASP.net應用:你在哪裏清理你的ASP.net應用程序中的JSON輸入?

[OperationContract] 
[WebGet] 
public string DoDeleteRow(GridParameter request) 
{ ... do stuff.. } 

你會如何驗證變量「請求」?你是否僅僅依賴微軟的JSON解析器,讓它爲你重建對象,或者你是否接受一個字符串輸入並在處理之前執行驗證?類似於下面的東西

[OperationContract] 
[WebGet] 
public string DoDeleteRow(string request) 
{ 
    if (CurrentUserIsValid) 
    { 
    //ASP.net membership 
    } 
    if (CanParseObject(request)) 
    { 
     //convert to .NET type 
    } 
} 

你在哪裏放置輸入消毒邏輯的其餘部分?

回答

0

只需讓內置解析器執行此操作即可。我無法想象CanParseObject會做什麼,不僅僅涉及解析對象和檢查錯誤...

另一方面,WCF有一個very extensive customization facility,您可以使用它來驗證,解析,檢查,或者任何你喜歡的東西,在它們被翻譯成方法調用之前的消息。所以如果你想要的話,你可以用它來建立一些東西

相關問題