• c#开发Mongo笔记第七篇


    开发到这里遇到了一些问题,哪到这里想请教一下大家

    今天我完成的是菜单功能,

     public   class Menu
        {
            public ObjectId _id { get; set; }
    
            public int MenuId { get; set; }
            public string Name { get; set; }
    
            public int ParentId { get; set; }
            public string  Url { get; set; }
    
            public string Icon { get; set; }
    
            public int OrderNo { get; set; }
    
            public string Descr { get; set; }
         
        }

    首先是按照最常规的方式采用内键的方式完成的菜单。当我完成的时候突然想到既然Monogo结构这么松散,我为什么不把子菜单当成一个字段存进去呢,于是增加了一个字段

      public List<Menu> Child = new List<Menu>();

    存储到数据库的结构式这样的,

    本以为一切顺利,但是却发现连最基本的插入子菜单的功能都实现不了了。

    我添加菜单时通常都是先添加父级菜单,然后再给父菜单添加子菜单,那么就相当于去修改这么文档的child属性,

    然后我用修改方法去写

                       parent.Child.Add(menu);
                        var queryid = Query.And(Query.EQ("MenuId", pid));
                     
                        var update = Update.Set("Child",menu);
              
                       DAL.DALMenu.Update(queryid, update);

    那么问题来了,update.set()这个函数的第二个参数是bsonvalue类型的,我无法把一个集合当成参数放进去,这个更新方法还必须指定一个要修改的字段,然后我就突然不知道怎么修改了。

    然后我就开始百度(自从谷歌突出中国以后我就开始百度了),结果能找到的都是基本的增删改查,哎,相当无助啊,

    希望有知道怎么做的能不吝赐教啊,万分感激啊

  • 相关阅读:
    ch_5102 Mobile Service
    ch_POJ1201 Intervals
    [CodeVs]谁是赢家
    树上莫队
    [NOI2009]管道区珠
    拉格朗日差值
    Simpson&自适应Simpson
    数论学习笔记
    hibernate FetchType理解
    Hibernate的generator属性之意义
  • 原文地址:https://www.cnblogs.com/bjjjunjie/p/4087642.html
Copyright © 2020-2023  润新知