protected void BindData()
{
List<Product> products = product.GetRepeaterData(prod);
string json = JsonConvert.SerializeObject(products);
dataRepeater.DataSource = json;
dataRepeater.DataBind();
}
<asp:Repeater ID="dataRepeater" runat="server">
<HeaderTemplate>
List<div id="accordion">
</HeaderTemplate>
<ItemTemplate>
<h3>
<a href="#" style="background-color: gray; height: 25px; color: White; text-decoration: none;">
<%# DataBinder.Eval(Container.DataItem, "Name")%></a></h3>
<div>
<ul>
<li><span>Id:
<%# DataBinder.Eval(Container.DataItem, "Id")%></span></li>
<li><span>OrganizationId:
<%# DataBinder.Eval(Container.DataItem, "Organization")%></span> </li>
<li><span>ParentProduct:
<%# DataBinder.Eval(Container.DataItem, "Product")%></span></li>
</div>
</ItemTemplate>
<FooterTemplate>
</div></FooterTemplate>
</asp:Repeater>
error: DataBinding: 'System.Char' does not contain a property with the name 'Name'.
<%# DataBinder.Eval(Container.DataItem, "Name")%></a></h3>
私はJSONとAjaxの概念全体に不慣れです。Webサービスから大量のデータを取得しているため、呼び出しが完了するまでプロセスが遅くなります。JSONとAjaxを使用してこれを非同期呼び出しにする必要があります。現在、バインドする前にデータをシリアル化/逆シリアル化できます。リピーターに逆シリアル化した後、データをバインドする意味がないため、シリアル化されたデータをリピーターにバインドしようとしていますが、バインドしていません。第二に、誰かがこれをajax呼び出しとして行う方法を教えてもらえますか?クライアント側に更新パネルを追加するだけで十分ですか?申し訳ありませんが、この質問は少し曖昧ですが、今は迷っています。ドキュメントや例も役立ちます。これが正しい方法かどうかわからないためです。