xmlファイルを読み込むメソッドを作成しましたが、2回は動作しません。ファイルの先頭にポインタを置く必要がありますが、見つからなかった。XMLを読む方法
using Microsoft.AnalysisServices.AdomdClient;
using System.Diagnostics;
namespace WindowsFormsApplication1
{
class Class {
private System.Xml.XmlReader XML_File;
public void DebugXML()
{
this.XML_File.Read();
while (!this.XML_File.EOF)
{
Debug.WriteLine(this.XML_File.ReadOuterXml());
}
}
public Class()
{
AdomdConnection conn = new AdomdConnection("Data Source=MyComputer;InitialCatalog=Database");
conn.Open();
AdomdCommand cmd = new AdomdCommand("Select Hierarchize([Projects].[Project Branch].Levels(1).Members) DIMENSION PROPERTIES PARENT_UNIQUE_NAME, HIERARCHY_UNIQUE_NAME, CUSTOM_ROLLUP, UNARY_OPERATOR, KEY0 ON 0, Hierarchize({{{[Period Calculations].[Period].&[0]}, {[Period Calculations].[Period].&[1]}, {[Period Calculations].[Period].&[2]}, {[Period Calculations].[Period].&[3]}, {[Period Calculations].[Period].&[4]}, {[Period Calculations].[Period].&[5]}}}) DIMENSION PROPERTIES PARENT_UNIQUE_NAME, HIERARCHY_UNIQUE_NAME, CUSTOM_ROLLUP, UNARY_OPERATOR, KEY0 ON 1 FROM [ProjectControl] WHERE ([Measures].[WIP]) CELL PROPERTIES BACK_COLOR, CELL_ORDINAL, FORE_COLOR, FONT_NAME, FONT_SIZE, FONT_FLAGS, FORMAT_STRING, VALUE, FORMATTED_VALUE, UPDATEABLE", conn);
CellSet Cellules = cmd.ExecuteCellSet();
this.XML_File = cmd.ExecuteXmlReader();
DebugXML();
DebugXML();
conn.Close();
}
}
あなたはXML_Fileのタイプを教えてくれていません。なぜなら、毎回それを別々に読むのではなく、クラス内で開いたままにしなければならない理由です。 –
'XmlReader'は転送専用のリーダーです。複数回読む必要がある場合は、他の構文を使用する必要があります。 –
System.Xml.XmlReader XML_File; – TTT