View Full Version : سوال: دسته بندی محصولات
gama_slv
جمعه 09 بهمن 1394, 11:18 صبح
برای گروه محصولات
public class GroupProduct {
public int GroupProductId { get; set; }
public int? ParentGroupId { get; set; }
public virtual GroupProduct Parent { get; set; }
public string GroupProductName { get; set; }
public virtual ICollection<GroupProduct> Children { get; set; }
public virtual ICollection<Product> Products { get; set; }
}
استفاده کردم
کسی آموزشی برای گروه بندی بصورت تو در تو داره؟
oracle_dba
جمعه 09 بهمن 1394, 17:48 عصر
سلام
بهترین روش در نظر گرفتن فیلی دیگر به نام Parent Id است . شما هر محصول رو تعیین می کنی جزو کدوم گروه است یعنی کد گروهی که می خواهی محصول زیر مجموعش باشه رو توی این فیلد Parent id درج می کنی .
زمان بازیابی هم میگی همه اونایی که Parent id اونها برابر با id گروهی که دارای انتخاب می کنی باشه
salar IT man
جمعه 09 بهمن 1394, 18:17 عصر
برای گروه محصولات
public class GroupProduct {
public int GroupProductId { get; set; }
public int? ParentGroupId { get; set; }
public virtual GroupProduct Parent { get; set; }
public string GroupProductName { get; set; }
public virtual ICollection<GroupProduct> Children { get; set; }
public virtual ICollection<Product> Products { get; set; }
}
استفاده کردم
کسی آموزشی برای گروه بندی بصورت تو در تو داره؟
چندین روش را در اینجا (http://www.dotnettips.info/projectissue/details/22/355#comment-618) بررسی کردیم.
gama_slv
شنبه 10 بهمن 1394, 00:37 صبح
من منو چند سطحی (http://www.dotnettips.info/post/1524/%D8%B3%D8%A7%D8%AE%D8%AA-%D9%85%D9%86%D9%88%D9%87%D8%A7%DB%8C-%DA%86%D9%86%D8%AF-%D8%B3%D8%B7%D8%AD%DB%8C-%D8%AF%D8%B1-asp-net-mvc) ررو خوندم ولی آموزش برای ساخت منو بود.من باید در یک tree view نمایش بدم.
مدلم رو تغییر دادم
public class GroupProduct {
public int GroupProductId { get; set; }
public string GroupProductName { get; set; }
public virtual int? ParentId { get; set; }
public virtual GroupProduct Parent { get; set; }
public virtual ICollection<GroupProduct> Children { get; set; }
public virtual ICollection<Product> Products { get; set; }
}
protected override void OnModelCreating(DbModelBuilder modelBuilder) {
// Self Referencing Entity
modelBuilder.Entity<GroupProduct>()
.HasOptional(x => x.Parent)
.WithMany(x => x.Children)
.HasForeignKey(x => x.ParentId)
.WillCascadeOnDelete(false);
base.OnModelCreating(modelBuilder);
}
138734
و از هلپر tree view استفاده کردم
کد ویو
@using Foolad.Helpers@model IEnumerable<Foolad.Models.GroupProduct>
@(Html.TreeView(Model)
.EmptyContent("No locations have been defined yet!")
.Children(m => m.Children)
.HtmlAttributes(new { id = "tree" })
.ChildrenHtmlAttributes(new { @class = "subItem" })
.ItemText(m => m.GroupProductName)
.ItemTemplate(
@<text>
<a href="#@item.GroupProductId">@item.GroupProductName</a>
</text>)
)
ولی نمی دونم چرا درست کار نمیکنه :گریه::عصبانی++:
138735
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.