SSIS データ プロファイル タスクの出力を MVC アプリに読み込もうとしています。問題を解決するために、xml ファイルの解析をテストする小さなコンソール アプリを作成しました。
次のリンクを使用しました。
http://schemas.microsoft.com/sqlserver/2008/DataDebugger/DataProfile.xsd
データ プロファイル出力ファイルで生成された .XML ファイルを記述する必要がある .XSD ファイルをダウンロードします。
次に、xsd.exe を実行して、コンソール アプリに含める C# クラスを作成しました。
以下は私の非常に単純なテストコードです:
XmlSerializer xser = new XmlSerializer(typeof(DataProfile));
DataProfile dProf = xser.Deserialize(new FileStream(@"D:\InputFiles\ProfilerDataCVD.XML", FileMode.Open)) as DataProfile;
if (dProf != null)
{
var profs = dProf.DataProfileOutput.Profiles;
foreach (ColumnValueDistributionProfileType c in profs)
{
Console.WriteLine(string.Format("Column Name: {0}, RowCount: {1}, Distinct Values: {2}", c.Column.Name, c.Table.RowCount, c.NumberOfDistinctValues));
}
}
そのコードでは、「dProf」は決して NULL ではなく、常に空です。私はこれを理解しようとして崖から飛び降りようとしているので、dProf でデータを取得する際の支援はおそらく命を救うでしょう!
私が見逃している明らかな XML があれば、これが私の得意分野ではないことを最初に認めます。このデータを返す方法を教えてくれさえすれば、自由に私を非難してください。