2016-06-01 6 views
0

WCFサービスを使用してデータを取得し、データを取得します。 jquery ajaxを使用している場合私はWCFサービスからデータを取得しています。しかし、私はjsonデータを解析できませんでした。私はほとんどの方法を試しました。しかし、私は達成できません。JsonConvert SerializeObjectを使用してデータセットからjsonデータをパースする方法

WCFサービス:

[ServiceContract] 
public interface IService 
{ 
    [OperationContract] 
    [WebGet(UriTemplate = "/GetUserDetails?uname={uname}", 
    BodyStyle = WebMessageBodyStyle.Wrapped, RequestFormat = WebMessageFormat.Json, 
    ResponseFormat = WebMessageFormat.Json)] 
    string GetUserDetails(string userName); 
} 

[AspNetCompatibilityRequirements 
(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)] 
public class Service : IService 
{ 
    public string GetUserDetails(string userName) 
    { 
     SqlParameter[] sqlparams = new SqlParameter[1]; 
     DataLayer dal = new DataLayer(); 
     DataSet ds = new DataSet(); 

     sqlparams[0] = new SqlParameter("@UserName", userName); 

     ds = dal.GetDataSet("dbConn", "GetUserDetailsSP", sqlparams); 

     string jsonValue = JsonConvert.SerializeObject(ds); 
     return jsonValue; ; 
    } 
} 

アヤックス:

 $.ajax({     
       type: 'GET', 
       contentType: 'application/json; charset=utf-8', 
       url: './Services/Service.svc/GetUserDetails', 
       data: { uname: 'e0205' }, 
       async: false, 
       dataType: 'json', 
       success: function (response) { 
        //var testMsg = $.parseJSON(response); 
        alert(response.GetUserDetailsResult); 
       }, 
       error: function (error) { 
        alert(error); 
       } 
      }); 

JSONデータ:私はPARSに苦労しています

{"GetUserDetailsResult":"{\"Table\":[{\"UserName\":\"E0205\",\"EmpName\":\"Manjeet\",\"LocationName\":\"Gurgaon\",\"Designation\":\"Analyst\"}]}"} 

ここにajaxのeデータがあります。

答えて

0

私は実際にサービス

から返さなっているものの応答を見ることができませんので、私がしようと提案する:

1)JSON.parse(response.data);

とあなたのdataType:'json'

ので、あなたは可能性があり単純に使用する

... 
success: function (response) { 
    console.log(response.GetUserDetailsResult.Table[0]); 
}, 
+0

あなたが言及したように私は両方の方法を試しています。エラーが発生しています。他の可能な方法はありません – kasim

+0

mozilla firefox上でfirebugを使ってアプリケーションを実行し、コンソールに何が入っているのかを確認してください。 – j4rey89

+0

** Uncaught TypeError:**未定義のプロパティ 'UserName'を読み取ることができません – kasim

関連する問題