有沒有辦法在XContainer中使用類似Element的方法,但會創建一個新的XElement,並返回如果容器中不存在具有指定名稱的元素?如何獲取XElement,並在不存在的情況下創建它?
2
A
回答
4
我想你應該自己寫。它應該是一個靜態輔助方法。
private static XElement GetOrCreateElement(XContainer container, string name) {
var element = container.Element(name);
if(element == null)
{
element = new XElement(name);
container.Add(element);
}
return element;
}
如果您希望使用成員調用語法,請在XContainer前添加「this」使其成爲擴展方法。在這種情況下,該方法應處於靜態類中,且不包含可調用「XContainerExtensions」的字段。
0
不,你必須自己寫的功能:
var element = container.Element("name");
if(element == null)
{
element = new XElement("name");
container.Add(element);
}
0
我認爲這是不可能的,因爲LINQ到XML是XML數據的查詢語言,不提供CRUD操作,同時查詢。你必須使用兩個步驟。
首先查詢您的元素,如果我不存在,則必須將新元素添加到您的容器中。
相關問題
- 1. 如何在不顯示它的情況下創建透視圖
- 2. 在某些情況下創建它
- 3. 如何在不創建目錄的情況下創建鏈接?
- 4. 如何在不創建實體的情況下獲取靜態參考數據?
- 5. 如何在不實際創建bean的情況下獲取bean定義?
- 6. 僅在不存在的情況下創建文件
- 7. MVC只在不存在的情況下創建新頁面
- 8. 如何在不存儲上下文的情況下創建自定義的NSManagedObject?
- 9. 如何在不下載的情況下獲取文件屬性
- 10. JIRA在沒有創建插件的情況下獲取IssueEvent
- 11. android:在不打開它的情況下獲取圖像尺寸
- 12. 如何在這種情況下創建緩存映射?
- 13. 我被困在爲以下情況創建SQL的情況下
- 14. 如何在不創建ZIP文件的情況下在Android中創建ZIP InputStream?
- 15. 如何在不創建模型的情況下在Django admin中創建表單
- 16. 在不保存的情況下創建nsmanagedobject [@Example]
- 17. 如何在不創建新PDF的情況下更新PDF?
- 18. 如何在不使用Shadow DOM的情況下創建組件?
- 19. 如何在不創建新對象的情況下引用substr?
- 20. 如何在不使用文件的情況下創建鬍鬚?
- 21. 如何在不檢查分支的情況下創建分支?
- 22. 如何在不觸摸硬盤的情況下創建文件?
- 23. 如何在不使用Membership.CreateUser()的情況下創建用戶?
- 24. 如何在不允許插入的情況下創建MySQL表
- 25. 如何在不克隆的情況下創建分支?
- 26. 如何僅在不連接設備的情況下創建IPA?
- 27. 如何在不使用String的情況下創建JSON對象?
- 28. 如何在不創建NaN的情況下處理數據框?
- 29. 如何在不創建id號的情況下添加數組?
- 30. 如何在不阻擋UI的情況下創建UIView
我懷疑這個方法存在於幾十個如果不是數百個世界各地的實用程序類...只是沒有在由微軟發佈的一個 – AakashM 2013-02-15 10:31:08