AngularJSの新機能です。簡単な質問であれば、私の謝罪を受け入れてください。質問のタイトルが理解できることを願っていますか?角度コントローラのMVCコントローラから返されたJSONデータを読む
私はASP.Net MVCアプリケーションでAngularJSを使用して、SQLサーバーテーブルからデータを準備し、ビューにデータを表示します。すべてがうまく見えますが、より高度な作業を進めようとすると、Angularモジュールからオブジェクトを読み取ることができないことがわかります。
たとえば、ユーザーの連絡先の詳細を読んで、各ユーザーの連絡先の数が異なります。したがって、ng-repear limitTo
は同じであってはいけません。これを行うには、私はいくつかのデータを読みたかったし、私がデータベースで見つかった項目の数に変数を設定し、これが私の見解の一部である私のng-repear limitTo
でその変数を使用します。
<table>
<tr ng-repeat="contact in users | limitTo:loopVar">
<td>
<div ng-show="!contactsElements" class="item_list">{{contact.contacts + " (" + contact.contactDesc + ")"}}</div>
</td>
</tr>
:
loopView
は、私はこれは角モジュール/コントローラである
を使用する変数であります
MVCコントローラは以下の通りです:
public JsonResult GetUser()
{
User userData = (User)Session["user"];
var db = new testDBEntities();
return this.Json((from userObj in db.Users
join uc in db.UserContacts
on userObj.Id equals uc.usrID
join us in db.Users
on userObj.usrSupervisor equals us.Id
where userObj.Id.Equals(userData.Id)
select new
{
Id = userObj.Id,
usrNme = userObj.usrNme,
fName = userObj.usrFirstName,
lName = userObj.usrLastName,
ssno = userObj.usrSSN,
contacts = uc.usrContact,
contactDesc = uc.usrContactDescription,
})
, JsonRequestBehavior.AllowGet
);
}
私はあなたが私のポイントを理解してほしい...一般的には、どのように私は私の見解では、それを使用する前に、私の角度コントローラに返さJSON
オブジェクトを読み取ることができますか?ご覧のとおり、私はng-repeat
ディレクティブを使用して私のビューでデータを読み取ることができますが、私は角度コントローラの個々のフィールドをどのように準備するか分かりません。
は、返されたデータオブジェクトは、あなたのコントローラー化するJsonResultでそれを指定する方法をフォーマットされているあなたに
ようloopVar値を設定した後getUsers関数を呼び出すことですか?サーバーから来る 'users'配列のプロパティではありません.... – Claies
私はまだそれを持っていません、返されたJSONからいくつかのデータベースオブジェクトをAngular $ scopeにその値を割り当てます。looVar –
'$ scope.users'と同じように' .success'コールバックの中に割り当てます。 '.success'の外に*割り当てようとすると、まだ応答がサーバーから返されていないので(async)、値はまだ存在しません。あなたがわからない場合は、asyncで読み上げたいかもしれません。また、 '.success'は非難されていますので、代わりに' .then'を使うことをお勧めします。 – Claies