【发布时间】:2014-01-17 21:36:15
【问题描述】:
我的页面上有 SiteMap 数据源控件
<div id="content_inside">
<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" />
<asp:TreeView ID="TreeView1" ExpandDepth="2"
</asp:TreeView>
</div>
不,我正在尝试使用以下代码 sn-p 绑定它的树视图
protected void Page_Load(object sender, EventArgs e)
{
var context = new moviescontext ();
var movies= context.movie.GetAll(ref context);
if (!IsPostBack)
{
TreeView1.DataSourceID = "SiteMapDataSource1";
TreeView1.DataSource = movies;
TreeView1.DataBind();
}
}
'GetAll' 是从数据库中获取数据的函数
public static List<movies> GetAll(this IEnumerable<movie> movie, ref moviescontext ctx)
{
var movies= ctx.movie
.Select(s => new movies
{
MovieId= s.MovieID,
MovieName = s.MovieName,
}).ToList();
return movies;
}
渲染时出现以下错误
HierarchicalDataBoundControl only accepts data sources that implement IHierarchicalDataSource or IHierarchicalEnumerable.
有什么建议吗?
【问题讨论】:
-
当您的数据只有一个级别时不要使用分层控件
-
如果我以编程方式将 xml 写入 web.sitemap 文件怎么样。那会是更好的方法吗?
标签: c# asp.net linq entity-framework sitemap