1

私は3つのエンティティを持っています。エンティティセンサ、エンティティタナマン、およびエンティティタナマンハッセンソーを含む。 私はapi tanamanhassensorからjson jqueryを使用してグラフを作成します。グラフを表示するには?私は私のJSONを使用している場合、API http://xxxxx/api/tanaman_has_sensor1対多の関係を持つWeb APIを取得する方法

私のエンティティのように発見されない:

public partial class Tanaman_has_Sensor 
{ 
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")] 
    public Tanaman_has_Sensor() 
    { 
     this.Tanaman_has_Sensor_has_Jadwal = new HashSet<Tanaman_has_Sensor_has_Jadwal>(); 
    } 

    public int Tanaman_IdTanaman { get; set; } 
    public int Sensor_IdSensor { get; set; } 
    public double NilaiSensor { get; set; } 
    public System.DateTime WaktuSensor { get; set; } 
    public string Lokasi { get; set; } 

    public virtual Sensor Sensor { get; set; } 
    public virtual Tanaman Tanaman { get; set; } 
    public virtual ICollection<Tanaman_has_Sensor_has_Jadwal> Tanaman_has_Sensor_has_Jadwal { get; set; } 
} 

これは私のコントローラ

public class TanamanhasSensorController : ApiController 
{ 
    private SmartGreenHouseEntities db = new SmartGreenHouseEntities(); 

    // GET: api/TanamanhasSensor 
    public IQueryable<Tanaman_has_Sensor> GetTanaman_has_Sensor() 
    { 
     return db.Tanaman_has_Sensor; 
    } 

    // GET: api/TanamanhasSensor/5 
    [ResponseType(typeof(Tanaman_has_Sensor))] 
    public async Task<IHttpActionResult> GetTanaman_has_Sensor(int id) 
    { 
     Tanaman_has_Sensor tanaman_has_Sensor = await db.Tanaman_has_Sensor.FindAsync(id); 
     if (tanaman_has_Sensor == null) 
     { 
      return NotFound(); 
     } 

     return Ok(tanaman_has_Sensor); 
    } 
} 

アプリケーションJSON

[{ 
"Tanaman_IdTanaman": 1, 
"Sensor_IdSensor": 2, 
"NilaiSensor": 3.1, 
"WaktuSensor": "2016-11-19T07:38:42.519263+07:00", 
"Lokasi": "sample string 5", 
"Sensor": { 
    "$id": "1", 
    "IDSensor": 1, 
    "NamaSensor": "sample string 2", 
    "Tanaman_has_Sensor": [ 
    { 
     "Tanaman_IdTanaman": 1, 
     "Sensor_IdSensor": 2, 
     "NilaiSensor": 3.1, 
     "WaktuSensor": "2016-11-19T07:38:42.519263+07:00", 
     "Lokasi": "sample string 5", 
     "Sensor": { 
     "$ref": "1" 
     }] 

マイJSONであります

$.ajax({ 
      type: 'GET', 
      url: "http://xxxxx/api/tanaman_has_sensor", 
      dataType: 'json', 
      async: false, 
      contentType: "application/json; charset=utf-8", 
      data: dd, 
+0

でこれを示し**あなたは – Aravind

+0

私は多くのものを意味@Aravind申し訳ありませんが、私はタイトルに変更されている – redim

+0

情報は、実際には十分ではないという意味で何をすべきか! !より具体的にしてください。 – Aravind

答えて

0

あなたがルートテーブルには、コントローラ名と一致する慣例により

url: "http://xxxxx/api/TanamanhasSensor 

を呼び出すべきである2

// Convention-based routing. 
config.Routes.MapHttpRoute(
    name: "DefaultApi", 
    routeTemplate: "api/{controller}/{id}", 
    defaults: new { id = RouteParameter.Optional } 
); 

のWeb APIのデフォルトの規則ベースのルーティングを仮定すると、マイナスConvention

のでTanamanhasSensorController意志TanamanhasSensor

にマップする

も、あなたのコントローラは、多くのコメント**多くの人に

public class TanamanhasSensorController : ApiController { 
    private SmartGreenHouseEntities db = new SmartGreenHouseEntities(); 

    // GET: api/TanamanhasSensor 
    [HttpGet] 
    public IQueryable<Tanaman_has_Sensor> GetTanaman_has_Sensor() { 
     return db.Tanaman_has_Sensor; 
    } 

    // GET: api/TanamanhasSensor/5 
    [HttpGet] 
    [ResponseType(typeof(Tanaman_has_Sensor))] 
    public async Task<IHttpActionResult> GetTanaman_has_Sensor(int id) { 
     Tanaman_has_Sensor tanaman_has_Sensor = await db.Tanaman_has_Sensor.FindAsync(id); 
     if (tanaman_has_Sensor == null) { 
      return NotFound(); 
     } 

     return Ok(tanaman_has_Sensor); 
    } 
} 
+0

おかげでnkosi、私は間違った呼び出しURLを – redim

関連する問題