我試圖改變一個WPF我創建的對象參考(不使用MVVM和數據綁定)到一個WPF是不使用這些宏偉的功能。MVVM - 未設置爲一個實例
我已經設置了一個人物模型,其中包含所有獲取和設置的多個屬性(太長而不能在此列出),甚至是NotifyProtertyChanged屬性(如ID和全名屬性)。
現在我想(通過單擊按鈕啓動代碼,以確保在編寫代碼時知道它何時啓動)讓我的WPF應用程序通過值列表,將其與在線XML文檔,並從列表中找出匹配查找值的列表中的每個人的數據列表,當然還會設置模型的某些屬性。
一個例子: - 尋找「勒維特」 - XML文件有4人的姓·勒維特所以它增加了這4人到我的清單(包括項目設置爲我已成立前的人物模型類)並設置每個項目的ID和FullName的值(縮寫爲示例)。
這是我informationProvider類,我實現了到目前爲止在搜索某一值(稱爲搜索字符串):通過我按一下按鈕等
public List<Person> GetPeople(string searchstring)
{
string url = string.Format("{0}{1}", BaseURL, HttpUtility.HtmlEncode(searchstring));
XDocument doc = XDocument.Load(url);
var names = (from s in doc.Root.Elements("Persons").Where(s => s.Element("Lastname").Value.Equals(searchstring, StringComparison.InvariantCultureIgnoreCase))
select new Person
{
ID = Convert.ToInt32(s.Element("id").Value),
fullName = s.Element("Firstname").Value + " " + s.Element("Lastname").Value
}).OrderBy(n => n.fullName).ToList();
return people;
}
我嘗試推出這一過程中爲我的項目,如列表(再次,僅用於測試目的) - 我已經設置「李四」的一個例子值不會在我們在InformationProvider類看,在格蘭XML文檔存在:
List<Person> persons= new List<Person>();
persons= informationProvider.GetPeople(searchShowName);
我的問題是,當我啓動代碼並點擊按鈕進行測試,我t會拋出一個錯誤,指出「對象引用未設置爲對象的實例」。並強調我的線
persons= informationProvider.GetPeople(searchShowName);
我該如何解決這個問題?
你看不出來什麼對象從調試是空? @ _ @ – dnr3