xml 파일의 데이터를 bulletedList에 바인딩하는 방법을 보여주기 위해 작은 예제를 작성했습니다. 나는 XmlDataSource 개체를 사용했다. 우선은
<?xml version="1.0" encoding="utf-8" ?>
<list>
<product id="123">
<name>product a</name>
<price>123.45</price>
</product>
<product id="123">
<name>product b</name>
<price>123.45</price>
</product>
</list>
xml 파일
products.xml을 사용하고 난 파일 변환 을 생성 -로만 컨트롤에 액세스가가 능 속성을. 신용
이 ... 당신을 방지 XmlDataSource에서 문제를 XML 노드의 값에 바인딩 할 수 있다는 지적에 대해 Darin Dimitrov로 이동합니다. 첫 번째 페이지 내에서 사용하는 방법을
보여줍니다 - 그것은 속성 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="list">
<list>
<xsl:apply-templates select="product"/>
</list>
</xsl:template>
<xsl:template match="product">
<product>
<xsl:attribute name="id">
<xsl:value-of select="@id"/>
</xsl:attribute>
<xsl:attribute name="name">
<xsl:value-of select="name"/>
</xsl:attribute>
<xsl:attribute name="price">
<xsl:value-of select="price"/>
</xsl:attribute>
</product>
</xsl:template>
</xsl:stylesheet>
그런 다음 나는 두 가지 예를 한 경우에만
transform.xsl와 함께 작동합니다.
<form id="form1" runat="server">
<div>
<h3>Bulleted List with XML binding</h3>
<asp:BulletedList ID="blPageOnly" runat="server" DataValueField="id" DataTextField="name" DataSourceID="xmlSource"></asp:BulletedList>
<asp:XmlDataSource ID="xmlSource" runat="server" DataFile="~/app_data/products.xml" TransformFile="~/app_data/transform.xsl" XPath="list/product"></asp:XmlDataSource>
</div>
<div>
<h3>Bulleted List with XML binding - code behind</h3>
<asp:BulletedList ID="blCodeBehind" runat="server"></asp:BulletedList>
</div>
</form>
두 번째는 당신이 당신을 도와 내 코드를 적용 할 수 있기를 바랍니다
가 발생합니다
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
XmlDataSource xmlSource = new XmlDataSource()
{
DataFile = "~/app_data/products.xml",
XPath="list/product",
TransformFile = "~/app_data/transform.xsl"
};
blCodeBehind.DataSource = xmlSource;
blCodeBehind.DataTextField = "name";
blCodeBehind.DataValueField = "id";
blCodeBehind.DataBind();
}
}
뒤에 코드에서 어떻게 바인드 XML 파일을 보여줍니다 !
미안하지만 바보 같은 질문을 할 수는 있지만 어떻게 Childnodes와 바인드 중계기를 말할 수 있습니까? –
당신은 주위에 Google하려고해야합니다. 나는 당신에게 당신이 필요로하는 형식의 종류를 위해 확실히 작동 할 수있는 방법을 제안했습니다. –