2015-11-02 74 views
0

Iam使用c#webapi實現了一個webservice,但是我的json響應數組是空的。返回的json數組包含缺少所有屬性的對象

我的代碼

public object Post([FromBody] castdet castdet1) 

    { 
     mid = castdet1.mid1; 
     return Request.CreateResponse(jsonvalues(mid)); 
    } 
private object jsonvalues(string mid) 
    { 
     DataTable dtalcast = GetAllcast(); 
     foreach (DataRow drow in dtalcast.Rows) 
     { 
      string mouvieid = drow["MovieMasterId"].ToString(); 
      string actname = drow["ActorName"].ToString(); 
      string charname = drow["CharacterName"].ToString(); 
      if (mouvieid == mid) 
      { 
       temp = 1; 
       castdet.Add(new myobject(actname, charname)); 

      } 
      } 
     return castdet; 
     } 

public class castdet 
    { 
    public string mid1 { get; set; } 
    } 

    public class myobject 
    { 
     string actorname; 
     string charactername; 
    public myobject(string v1, string v2) 
     { 
     actorname = v1; 
     charactername = v2; 
     } 
    } 

我的JSON響應字符串是這樣的[{},{}],其empty.What出了錯我嗎?

+0

@Rob:這是iam使用的確切代碼,'castdet'是我用於獲取每個值的列表。我可以設置獲取這些值。但無法顯示內部的json數組。 –

回答

0

您需要將myobject的字段公開。或者更好的是使他們成爲公共屬性:

public class myobject 
{ 
    public string actorname { get; set; } 
    public string charactername { get; set; } 

    public myobject(string actorname, string charactername) 
    { 
     this.actorname = actorname; 
     this.charactername = charactername; 
    } 
} 

(你可以有其他的問題 - 你的代碼是不完整的,並且不編譯另外,你應該修改你的方法來明確地返回正在返回的實際類型,不是。返回object。這允許編譯時檢查類型錯誤。)

相關問題