2017-06-13 3 views
0

Hier ist der Code:Wie extrahieren Felder Daten von Ajax MVC Action Call?

1) MVC-Controller:

public DiagramData GetDiagramData() 
{ 
    return new DataBindingHelper().GetData(); 
} 

2) Daten Helfer:

public class DataBindingHelper 
{ 
    public DiagramData GetData() 
    { 
     DiagramData diagramData = new DiagramData(); 
     return diagramData; 
    } 
} 

public class DiagramData 
{ 
    public string From 
    { 
     get { return "Moscow"; } 
    } 

    public string To 
    { 
     get { return "Saint Petersburg"; } 
    } 

    public string Color 
    { 
     get { return "Red"; } 
    } 

    public int Thick 
    { 
     get { return 2; } 
    } 
} 

3) Java Script:

function initDataBinding() { 
    jQuery.ajax({ 
     type: "GET", 
     //url: '@Url.Action("GetDiagramData", "Home")' 
     url: '/Home/GetDiagramData' 
    }).done(function (data) { 
     //data = JSON.stringify(data); 
     //alert(data.From); 
    }); 
+0

Sind die API-Controller? oder normal? –

+0

Es ist normale MVC-Controller. – tesicg

+0

Haben Sie das Problem gelöst? – hasan

Antwort

0

Wenn es normal conroller ist es sollte auf Serverseite sein:

public JsonResult GetDiagramData() 
{ 
    return Json(new DataBindingHelper().GetData(), JsonRequestBehavior.AllowGet); 
} 

Auf Client-Seite:

function initDataBinding() { 
    $.ajax({ 
     type: "GET", 
     url: '/Home/GetDiagramData' 
    }).done(function (data) { 
     alert(data.From); //<- this line should work 
    }); 
+0

Es funktioniert nicht. Nach dem AJAX-Aufruf geht eine andere JavaScript-Bibliothek: var $ = go.GraphObject.make; – tesicg

+0

Das funktioniert: url: '/ Home/GetDiagramData' – tesicg

+0

Entschuldigung, ich bin mir nicht sicher, was du meinst. – tesicg