Ich habe ein ganz mysteriöses Problem:
Folgende Klasse:
Code:
// WebsiteItem
public class WebsiteItem
{
private XPathDocument _pathDoc;
private Boolean _isPrimary;
private string _url;
#region Getter/Setter
public Boolean IsPrimary
{
get { return _isPrimary; }
set { _isPrimary = value; }
}
public string
URL
{
get { return _url; }
set { _url = value; }
}
#endregion
public WebsiteItem(XPathDocument PathDoc)
{
_pathDoc = PathDoc;
}
public void GetDetails()
{
XPathNavigator nav = _pathDoc.CreateNavigator();
XPathNodeIterator nodeIter = nav.Select("businessRelationship/businessSupplier/company/websiteList/*");
if (nodeIter != null)
{
while (nodeIter.MoveNext())
{
if (nodeIter.Current.HasAttributes)
{
_isPrimary = Convert.ToBoolean(nodeIter.Current.GetAttribute("primary", ""));
}
//Debug.WriteLine("==> " + nodeIter.Current.SelectSingleNode("website").Value);
_url = nodeIter.Current.SelectSingleNode("website").Value;
}
}
}
}
Und der Aufruf:
Code:
_wi = new WebsiteItem(_pathDoc);
_wi.GetDetails();
_websiteList.Add(_wi);
So, kommentiere ich die zeile
_url = ... aus geht alles wunderbar. Lasse ich sie drinne kommt die fehlermeldung wie im Titel: "Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt". Kann mir das mal bitte jemand erklären?
Ich habe eine Klasse
public class AddressItem die identisch ist mit der obigen nur eben andere
XMl-Pfade. Dort habe ich das Problem nicht. Ich kann keinen Unterschied festestellen weder in der Implementierung noch beim Aufruf.