View Full Version : سوال: دسته بندی محصولات
  
gama_slv
جمعه 09 بهمن 1394, 12: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, 18:48 عصر
سلام 
بهترین روش در نظر گرفتن فیلی دیگر به نام Parent Id است . شما هر محصول رو تعیین می کنی جزو کدوم گروه است یعنی کد گروهی که می خواهی محصول زیر مجموعش باشه رو توی این فیلد Parent id درج می کنی . 
زمان بازیابی هم میگی همه اونایی که Parent id اونها برابر با id گروهی که دارای انتخاب می کنی باشه
salar IT man
جمعه 09 بهمن 1394, 19: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, 01: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.