代码之家  ›  专栏  ›  技术社区  ›  shamim

如何设置Xattribute值为空

  •  1
  • shamim  · 技术社区  · 15 年前
     XElement xml = new XElement("MyMenu",
                         from c in db.Security_Module_Menus
                         //where (c.ParentID == 0)
                         orderby c.Menu_ID
                         select new XElement("Item",
                                   new XAttribute("Text", c.Menu_Name), new XAttribute("NavigateUrl", c.Target_URL)
    
    
                                   )
                         ); 
    

    从我上面的语法 c.菜单名称,c.目标地址 值可以为空。显示错误

    值不能为空。 参数名称:值 我知道 设置元素值() 用于解决此错误。但如何使用上面的语法。帮助我使用它。显示语法

    1 回复  |  直到 15 年前
        1
  •  2
  •   Joe Albahari    15 年前

    如果c.menu\u name和c.target\u url为空,您可能希望避免创建属性?如果是这样,您可以按如下方式进行操作:

    new XElement("MyMenu",
      from c in db.Security_Module_Menus
      orderby c.Menu_ID
      select new XElement("Item",
        c.Menu_Name == null ? null : new XAttribute("Text", c.Menu_Name),
        c.Target_URL == null ? null : new XAttribute("NavigateUrl", c.Target_URL))
      )
    
    推荐文章