2010-12-27 4 views
4

私は窓の電話7アプリケーションを開発しています。私はウィンドウの電話7アプリケーションに新しいです。 Add-> New Itemを選択してプロジェクト&を右クリックしてXMLファイルをプロジェクトに追加しました。私は、簡単に、私は私のXMLファイルを読み込む&書き込み操作を行うことができます上記のコードを使用して、次のコードウィンドウフォン7のアプリケーションフォルダー内にあるXMLファイルをロードするには?

IsolatedStorageFile isfData = IsolatedStorageFile.GetUserStoreForApplication(); 
      XDocument doc = null; 
      IsolatedStorageFileStream isfStream = null; 
      if (isfData.FileExists(strXMLFile)) 
      { 
       isfStream = new IsolatedStorageFileStream(strXMLFile, FileMode.Open, isfData); 
       doc = XDocument.Load(isfStream); 
       isfStream.Close(); 
      } 
      else 
      { 
       doc = XDocument.Load(strXMLFile); 
       isfStream = new IsolatedStorageFileStream(strXMLFile, FileMode.CreateNew, isfData); 
       doc.Save(isfStream); 
       isfStream.Close(); 
      } 

を使用して自分のアプリケーションでXMLファイルを読み込むことができます。

しかし、XMLファイルをフォルダに入れると問題が発生します。 プロジェクトに「XML Files」という名前のフォルダを1つ追加しました。プロジェクト名&を右クリックして、ビジュアルスタジオのAdd-> New Folderを選択します。次に、「XMLファイル」フォルダにXMLファイルを追加しました。右クリックすると、&のAdd-> New Itemが選択されました。 XMLファイルをフォルダに置くと、アプリケーションで読み込むことができません。私はまた、アプリケーションのXAPパッケージで、私はエラーを取得しています

doc = XDocument.Load(strXMLFile); 

でエラーを取得しています

isfStream = new IsolatedStorageFileStream("/XML Files/"+strXMLFile, FileMode.Open, isfData); 

次の文「『/ XMLファイル/ A.xmlを』ファイルを見つけることができませんで試してみました"私は何をすべきか ?どのようにXMLファイルをロードするフォルダ内のloacted?私のコードで何か間違っていますか?上記の問題を解決するためのコードやリンクを教えてください。

+0

XMLファイルのプロパティで[ビルドアクション]が[コンテンツ]に設定されていることを確認しましたか? –

答えて

11

まず、あなたのXMLファイルのBuild ActionContentに設定され、Copy to outputオプションがCopy if newer(またはCopy always)に設定されていることを確認してください。次に、これを試してください:

XDocument doc = XDocument.Load("XML Files/MyXmlFile.xml"); 

先頭にスラッシュ(/)はありません。私は数日前にこの馬鹿げた問題に取り組んで数時間を過ごしました。

+0

私はコメントするのに4年遅れますが、それは魅力のように機能しました。ありがとう。 – WindyHen

関連する問題