View Full Version : منو دینامیک با زیر منو نا محدود
bitcob589
چهارشنبه 21 فروردین 1392, 10:33 صبح
با سلام
چگونه می توان منو دینامیک با زیر منو نا محدود با linq پیاده سازی کرد
bitcob589
چهارشنبه 04 دی 1392, 00:11 صبح
آیا با linq و entity نمی توان منو دینامیک پیاده سازی کرد
bitcob589
پنج شنبه 08 اسفند 1392, 13:52 عصر
آیا هیچ روشی وجود ندارد
منو دینامیک با زیر منو نا محدود با linq پیاده سازی کرد ( تحت وب )
لطفا راهنمایی بفرمایید:گریه::عصبانی++::گری :
bahareh1368
چهارشنبه 14 اسفند 1392, 09:25 صبح
آیا هیچ روشی وجود ندارد
منو دینامیک با زیر منو نا محدود با linq پیاده سازی کرد ( تحت وب )
لطفا راهنمایی بفرمایید:گریه::عصبانی++::گری :
جدول بصورت زیر تعربف شده :
EmployeeID که کلید اصلی است
BoosID که اگه با EmployeeID برابر باشه زیر منو ها رو مشخص میکنه
Name
Title
برای مثال داریم :
1 0 زبان های برنامه نویسی NULL
2 1 C# Asp.NET برنامه نویسی وب با سی شارپ
3 1 VB Asp.NET برنامه نویسی وب با وی بی
4 2 MVC
5 2 Web Form
6 1 PHP
در رویداد page_Load داریم :
var employees = db.Employees.ToList();
var parentMenus = employees.Where(e => e.BossID == 0).ToList();
var sb = new StringBuilder();
string unorderedList = GenerateUl(parentMenus, employees, sb);
string menu = unorderedList;
تابعی که منو رو درست میکنه بصورت زیر تعریف میشه :
public string GenerateUl(List<Employees> parenMenu, List<Employees> employee, StringBuilder sb)
{
sb.AppendLine("<ul>");
if (parenMenu.Count > 0)
{
foreach (var item in parenMenu)
{
string menuTitle = item.Title;
string menuName = item.Name;
string begin = string.Format("<li id='{0}'>{1}<br/>{2}", item.EmployeeID, menuName, menuTitle);
sb.AppendLine(begin);
int employeeID = item.EmployeeID;
var subMenu = employee.Where(e => e.BossID == employeeID).ToList();
if (subMenu.Count > 0)
{
var subMenuBuilder = new StringBuilder();
sb.Append(GenerateUl(subMenu, employee, subMenuBuilder));
}
sb.Append("</li>");
}
}
sb.Append("</ul>");
return sb.ToString();
}
bitcob589
چهارشنبه 14 اسفند 1392, 15:18 عصر
خروجی کدهای بالا چگونه نمایش داده شود
bahareh1368
چهارشنبه 14 اسفند 1392, 21:18 عصر
خروجی کدهای بالا چگونه نمایش داده شود
میتونید در قالب اچ تی ام ال یعنی ساختار درختی با li و ui نشون بدید یا بصورت treeview یا چارت و هرچیز دیگه ای که شما نیاز داشته باشیذ.من خودم بصورت چارت نشون دادم.
bitcob589
پنج شنبه 22 اسفند 1392, 14:18 عصر
چگونه می توان ساختار جدول پست 4 در دیتالیست نمایش دهیم یعنی اگر دیتابیس به صورت زیر باشد
---------------------------------------------------
EmployeeID
BoosID
Name
1
0
خودرو
2
0
پوشاک
3
1
پراید
4
2
دامن
5
1
پیکان
چگونه می توان اطلاعات از دیتابیس خواند و به صورت زیر در datalist به صورت زیر نمایش داده شود
خودرو
پراید
پوشاک
دامن
خودرو
پیکان
bahareh1368
پنج شنبه 22 اسفند 1392, 23:24 عصر
کافیه درون دیتا لیست تو تا لیبل بذارید و در تابع eval شرط قرار دهید. یکی از شرط ها اینه که اونهایی رو نشون بده که boosID مخالف صفر باشه(لیبل های دوم درست میشه) و شرط بعدی اون هایی هستند که EmployeeID ==BoosID است(برای اینکه نام گروه ها را پیدا کنی یعنی بفمی لیبل اون نامش خودرو که جلوش پراید اومده ).
bitcob589
پنج شنبه 22 اسفند 1392, 23:34 عصر
کافیه درون دیتا لیست تو تا لیبل بذارید و در تابع eval شرط قرار دهید. یکی از شرط ها اینه که اونهایی رو نشون بده که boosID مخالف صفر باشه(لیبل های دوم درست میشه) و شرط بعدی اون هایی هستند که EmployeeID ==BoosID است(برای اینکه نام گروه ها را پیدا کنی یعنی بفمی لیبل اون نامش خودرو که جلوش پراید اومده ).
یک مثال می گذارید
Mani_rf
شنبه 30 فروردین 1393, 15:26 عصر
چیزی که شما لازم دارید تو این تاپیک (http://barnamenevis.org/showthread.php?353081-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%DA%A9%D9%86%D8%AA%D8%B1%D9%84-Treeview-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%85%D8%B4%D8%A7%D9%87%D8%AF%D9%87-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA-%DB%8C%DA%A9-%D8%AC%D8%AF%D9%88%D9%84-self-join-%D9%88-%D8%A8%D9%87-%D8%B5%D9%88%D8%B1%D8%AA-parent-and-child-nodes)توضیح داده شده دوست عزیز.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.