私はこの問題を完全に取り除かれています。私は "オブジェクトのインスタンスに設定されていないオブジェクト参照"を取得しています。エラー - 私は理由を理解することはできません。これは私が持っているコードです:私のプロフィールクラスです。ここオブジェクト参照がオブジェクトのインスタンスに設定されていません - LINQ
public class PlayerProfile
{
public List<Profile> PlayerINfo = new List<Profile>();
public void LoadProfiles(string path)
{
XDocument xmlDoc = XDocument.Load(path);
PlayerINfo = new List<Profile>();
// This is where I get the error:
PlayerINfo = (from profiles in xmlDoc.Root.Element("OnlineProfile").Elements("Player")
select new Profile
{
Name = (string)profiles.Element("Name"),
Sex = (string)profiles.Element("Sex"),
Avatar = (string)profiles.Element("Avatar").Attribute("path") ?? "",
Created = (DateTime)profiles.Element("Created")
}).ToList();
}
}
:
public class Profile
{
public string Name { get; set; }
public string Sex { get; set; }
public string Avatar { get; set; }
public DateTime Created { get; set; }
}
EDIT - XMLファイルのコードを追加:解決+これを試してみた
<?xml version="1.0" encoding="utf-8"?>
<OnlineProfile>
<Player>
<Name>Stacey</Name>
<Sex>Female</Sex>
<Avatar path="/images/Picture.png" />
<Ratio>
<Win>0</Win>
<Loss>0</Loss>
<Abandoned>0</Abandoned>
</Ratio>
<Created>6/19/2011</Created>
</Player>
</OnlineProfile>
を行うことも – Stacey
うまくXMLファイルをロードし、あなたは何のスペルミスがどこにも存在しないことを確認していますか?すべてのケースが一致していますか? – c0deNinja
xmlドキュメントのサンプルを投稿する – c0deNinja