我遇到转发器绑定的问题,我收到此消息:
DataBinding:'System.String'不包含具有名称的属性 'CotisationMensuelle'。
这是C#代码:
XDocument docxx = XDocument.Parse(Session["xmlrs" + z + ""].ToString());
//This now holds the set of all elements named field
try
{
XNamespace foobar = "http://www.april-technologies.com";
var urlList = docxx.Descendants(foobar + "CotisationMensuelle")
.Select(x => (string)x)
.ToList();
Console.WriteLine(urlList);
rpMyRepeater1.DataSource = urlList;
rpMyRepeater1.DataBind();
}
catch(Exception ex)
{
}
aspx页面代码:
<%# DataBinder.Eval(Container.DataItem, "CotisationMensuelle") %>
如何解决此问题?
答案 0 :(得分:0)
你需要为转发器提供aspx页面标记,如下所示
<asp:Repeater ID ="rpMyRepeater1" ItemType="System.string" runat="server">
<ItemTemplate>
<%=this.GetDataItem().ToString() %>
</ItemTemplate>
</asp:Repeater>
根据您的新更新,如果您需要绑定如下
<%# DataBinder.Eval(Container.DataItem, "CotisationMensuelle") %>
您需要拥有名为CotisationMensuelle
的媒体资源,但目前您还没有,请尝试以下
var urlList = docxx.Descendants(foobar + "CotisationMensuelle")
.Select(x => new { CotisationMensuelle =(string)x})
.ToList();