2013-12-12 75 views
0

我已經使用XNA完成了我的項目,並且我正在嘗試在使用Monogame時將其轉換。無法將資源加載爲XML文件

我的問題是我無法加載我的XML文件。

錯誤:Could not load Level asset as a non-content file!

我的代碼:無擴展file = Content.Load<XmlData[]>(path);

路徑= XML名稱的文件。 (我都嘗試過)。

類XMLDATA:

public class XmlData 
{ 
    public int id; 
    public int posx; 
    public int posy; 
    public int rot; 
    public int Width; 
    public int Height; 
} 

和我的一些XML文件:

<?xml version="1.0" encoding="utf-8" ?> 
    <Asset Type="MyDataTypes.XmlData[]"> 
    <Item> 
     <id>17</id> 
     <posx>54</posx> 
     <posy>30</posy> 
     <rot>90</rot> 
     <Width>184</Width> 
     <Height>5</Height> 
    </Item> 

了,我想這跟XNA一個問題,我有以下行添加到我的XML文件<XnaContent> </XnaContent> 而且我還必須將XML數據添加爲庫(即使它只有一個類)。

那麼Monogame有什麼不同?爲什麼我無法加載這個XML文件?在適當的情況下,我的XML文件是一個內容。

感謝您的任何幫助,我將不勝感激。

編輯:我以爲我在這裏發現我的問題 - ><Asset Type="MyDataTypes.XmlData[]"> 我試過<Asset Type="XmlData[]">因爲我沒有MyDataTypes庫了。我也嘗試了內容目錄和資產目錄。沒有任何工作。我保留這篇文章更新。

+0

我假設這是一個關於問題的錯字,而不是您的代碼,但是您不需要關閉Asset標籤? – SpartanDonut

+0

當然,我知道XML,資產標籤是關閉的。 – Gabson

+0

您是否將內容直接添加到您的MonoGame項目中?你能加載其他文件嗎? – Goose

回答

0

您是否嘗試將屬性文件設置爲Copy if newer

+0

仍然是一樣的錯誤信息.. – Gabson

0

我相信你不能在monogame中做到這一點,因爲它沒有內容管道將xml轉換爲xnb文件,所以,除非我錯了,你最好在xna中創建文件,然後複製將xnb文件放入您的monogame項目中,並將它們設置爲「Content」和「Copy if newer」