
{"id":222,"date":"2008-02-27T16:34:00","date_gmt":"2008-02-27T16:34:00","guid":{"rendered":"http:\/\/www.sincebirth.cn\/?p=222"},"modified":"2008-02-27T16:34:00","modified_gmt":"2008-02-27T16:34:00","slug":"%e7%94%a8linq%e7%94%9f%e6%88%90%e6%97%a0%e9%99%90%e7%ba%a7%e5%88%86%e7%b1%bb%e8%8f%9c%e5%8d%95treeview","status":"publish","type":"post","link":"https:\/\/niuduer.sincebirth.space\/?p=222","title":{"rendered":"\u7528Linq\u751f\u6210\u65e0\u9650\u7ea7\u5206\u7c7b\u83dc\u5355TreeView"},"content":{"rendered":"<div id=\"blog_text\" class=\"cnt\">\n<p>\u6570\u636e\u6a21\u578b\uff1aNewsCategory<\/p>\n<div style=\"direction: ltr\">\n<table style=\"border-right: #a3a3a3 1pt solid; border-top: #a3a3a3 1pt solid; border-left: #a3a3a3 1pt solid; direction: ltr; border-bottom: #a3a3a3 1pt solid; border-collapse: collapse\" cellspacing=\"0\" cellpadding=\"0\" border=\"1\" valign=\"top\">\n<tbody>\n<tr>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 0.802in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">Cateid<\/p>\n<\/td>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 1.329in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">uniqueidentifier<\/p>\n<\/td>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 0.978in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">ID<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 0.802in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">CateName<\/p>\n<\/td>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 1.329in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">Nvarchar(256)<\/p>\n<\/td>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 0.978in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">\u5206\u7c7b\u540d<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 0.802in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">PreCate<\/p>\n<\/td>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 1.329in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">uniqueidentifier<\/p>\n<\/td>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 0.978in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">\u7236\u7c7b<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 0.802in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">IsLeaf<\/p>\n<\/td>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 1.329in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">bit<\/p>\n<\/td>\n<td style=\"border-right: #a3a3a3 1pt solid; padding-right: 4pt; border-top: #a3a3a3 1pt solid; padding-left: 4pt; padding-bottom: 4pt; vertical-align: top; border-left: #a3a3a3 1pt solid; width: 0.978in; padding-top: 4pt; border-bottom: #a3a3a3 1pt solid\">\n<p style=\"font-size: 10pt; margin: 0in\">\u662f\u5426\u4e3a\u53f6\u5b50<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>\u9996\u5148\u521b\u5efaLinq to sql classes\u6587\u4ef6DB.dbml\uff0c\u628a\u8be5\u8868\u62d6\u8fdb\u53bb<\/p>\n<p>\u4e0b\u9762\u662f\u4ee3\u7801\uff1a<\/p>\n<p>\u5728\u9875\u9762\u4e0a\u653e\uff1a<\/p>\n<p>&lt;asp:TreeView ID=&quot;TreeView1&quot; runat=&quot;server&quot; ShowLines=&quot;True&quot;&gt;<br \/>\n&nbsp;&nbsp;&nbsp;  &lt;\/asp:TreeView&gt;<\/p>\n<p>.cs\u4e2d\u4e3a\uff1a<\/p>\n<p>&nbsp;&nbsp;&nbsp;  DBDataContext ctx = new DBDataContext();<\/p>\n<p>&nbsp;&nbsp;&nbsp;  protected void Page_Load(object sender, EventArgs e)<br \/>\n&nbsp;&nbsp;&nbsp;  {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  IQueryable&lt;NewsCategory&gt; cates = from cate in ctx.NewsCategories<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  where cate.PreCate.ToString().Equals(&quot;root&quot;)<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  select cate;<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  foreach (var cate in cates)<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  {<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  TreeNode node = new TreeNode();<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  node.Text = cate.CateName;<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  node.Value = cate.CateId.ToString();<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  TreeView1.Nodes.Add(node);<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  if (cate.IsLeaf==false)<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  {<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  node.Expanded = true;<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  AddReplies(node);<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  }<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  }<br \/>\n&nbsp;&nbsp;&nbsp;  }<\/p>\n<p>&nbsp;&nbsp;&nbsp;  private void AddReplies(TreeNode node)<br \/>\n&nbsp;&nbsp;&nbsp;  {<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  IQueryable&lt;NewsCategory&gt; cs = from c in ctx.NewsCategories<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  where c.PreCate.ToString().Equals(node.Value)<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  select c;<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  foreach (var c in cs)<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  {<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  TreeNode replyNode = new TreeNode();<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  replyNode.Text = c.CateName;<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  replyNode.Value = c.CateId.ToString();<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  node.ChildNodes.Add(replyNode);<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  if (c.IsLeaf==false)<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  {<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  replyNode.Expanded = true;<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  AddReplies(replyNode);<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  }<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  }<br \/>\n&nbsp;&nbsp;&nbsp;  }<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u6570\u636e\u6a21\u578b\uff1aNewsCategory Cateid uniqueidentifier ID CateName N [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-222","post","type-post","status-publish","format-standard","hentry","category-all"],"views":1155,"_links":{"self":[{"href":"https:\/\/niuduer.sincebirth.space\/index.php?rest_route=\/wp\/v2\/posts\/222","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/niuduer.sincebirth.space\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/niuduer.sincebirth.space\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/niuduer.sincebirth.space\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/niuduer.sincebirth.space\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=222"}],"version-history":[{"count":0,"href":"https:\/\/niuduer.sincebirth.space\/index.php?rest_route=\/wp\/v2\/posts\/222\/revisions"}],"wp:attachment":[{"href":"https:\/\/niuduer.sincebirth.space\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=222"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/niuduer.sincebirth.space\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=222"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/niuduer.sincebirth.space\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=222"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}