0

これはおそらく私が自分でテストできるものの 1 つですが、データバインディングを私よりも少しよく理解している人から、より包括的な回答を得たかったのです。私自身、モデル集約型の MVC のほうが好きなので、一般的な asp.net データ バインディングの概念全体については少し新しいです。

私が理解していることは次のとおりです。コントロールまたはページ全体をデータソースにバインドすると、DataBinderクラスを使用して実行時にデータを解決できます。

私がよくわからないのは範囲です。たとえば、最近継承したレガシー アプリには、次のような行がたくさんあります。

DataBinder.Eval(Container.DataItem, "saved_offer_id");

しかし、asp.netがキーを見つけるためにどこを見ればよいかをどのように知っているかについて、私は混乱していsaved_offer_idます。たとえば、次のように 2 つのリピーターがあるとします。

<asp:Repeater id="repeater1">
     <span>My offer ID is <# DataBinder.Eval(Container.DataItem, "saved_offer_id") %></span>
</asp:Repeater>

<asp:Repeater id="repeater2">
     <span>My offer ID is <# DataBinder.Eval(Container.DataItem, "saved_offer_id") %></span>
</asp:Repeater>

そして、それぞれのリピーターが独自のデータ ソースを持っているとしましょう。はどのDataBinderデータ ソースを参照するかをどのように判断しますか? これら 2 つのリピーターが異なるオファー ID 値を表示する状況はありますか?

4

1 に答える 1

0

DataBinder は、その親オブジェクトに関連付けられた DataSource を使用します。

ネストされたリーダーは、その親リーダーの現在のレコードの値を読み取ることができます。

于 2012-11-02T17:01:08.100 に答える