0
私はWSからデータを読み込み、anglejのスコープ変数にアタッチしようとしています。anglejsを使用してWebサービスからデータを読み取る
コントローラのAPIは、次のようになります。
public class ContactsController : ApiController
{
// GET: api/Contacts
public List<Contact> Get()
{
List<Contact> cl = new List<Contact>();
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConStr"].ConnectionString);
SqlCommand cmd = new SqlCommand(@"SELECT * FROM Contacts", con);
try
{
con.Open();
SqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
Contact c = new Contact();
c.Name = rdr["Name"].ToString();
c.Phone = (int)rdr["Phone"];
c.Mail = rdr["Mail"].ToString();
c.City = rdr["City"].ToString();
c.Address = rdr["Address"].ToString();
c.Image = rdr["Image"].ToString();
cl.Add(c);
}
rdr.Close();
}
catch (Exception e)
{
}
finally
{
con.Close();
}
return cl;
}
HTMLコントローラは次のようになります。
controller: function ($scope, $http) {
var url = "http://example.com"
$http.get(url + "/api/Contacts").then(function (res) {
$scope.contacts = res.data;
}, function (err) { alert(err);});
しか含んでいないためにres.dataようです。 ご協力いただければ幸いです。あなただけのList<Contact>
オブジェクトを返してきた
あなたはPOSTMAN(クロームプラグイン)によるクロスチェックのAPIレスポンスと見ることはできます任意の結果を返して?その場合、そのAPIの問題ではない。 – fiberair
@Jadenkunそれは質問に答えることはできませんが、私はかなりエラーがHTMLコントローラではないと確信しています。 resがres.dataの代わりにすべてのデータを直接持っているかどうかを確認するだけです。それも空であれば、誰かがAPIコントローラーで変更が必要なものを返すべきです。 –