0

ASP.NET ページがあります。次のようなデータソースを作成します。

 <asp:ObjectDataSource ID="uxOrderSource" runat="server" SelectMethod="OrdersGetOne" TypeName="Vevo.Domain.DataSources.OrdersDataSource">
 <selectparameters>
     <asp:QueryStringParameter Name="orderID" QueryStringField="OrderID" Type="String" />
 </selectparameters>
 </asp:ObjectDataSource>

そして、ここでデータソースを次のように使用します。

 <asp:FormView ID="uxOrderView" runat="server" DataSourceID="uxOrderSource" CssClass="CheckoutCompleteCustomerFormView">

そして、そのデータソースの電子メール フィールドを次のように参照します。

<%# Eval("Email") %>

私の問題は、このフォームがページに作成される前に、その電子メールを引き出して、その値でスクリプト変数を設定する必要があることです。これにより、注文明細が繰り返されている間に使用できるようになります。すべての注文項目 (フォームが作成される前にページで発生する) について、サードパーティ API を呼び出して項目情報を送信する必要がありますが、その項目情報にもメールが必要であり、メールが存在しないためです。注文品目のデータソース。

4

1 に答える 1

1

これに基づいて:

フォームビューやグリッドビューなどでデータソースを使用せずに、データソースのフィールド値にアクセスする必要があるだけです

最も簡単な方法は、これを使用してコード ビハインドで手動でGridVieworをバインドすることです。FormView

protected void Page_Load(object sender, EventArgs e)
{
    if (!this.IsPostBack)
    {
        this.myGridView.DataSource = this.GetYourDataSourceManually();
        this.myGridView.DataBind();
    }
}

スクリプトを使用する場合は、2 つの方法があると思います。必要なGridViewデータをレンダリングしてから、JQuery を使用して既にレンダリングされている各要素を見つけ、それを使用してサード パーティの API を呼び出します。

または..

JQuery を使用して、クライアント側で消費するデータを含む Web サービス (シンプルにするための PageMethod) を公開します。

私の GitHub サイトには、多くの機能サンプルがあります。

于 2012-10-08T21:57:27.623 に答える