3

我正在尝试将 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 内容,我将首先承认这不是我的强项。只要您告诉我如何制作此返回数据,就可以随意责骂我。

4

1 回答 1

0

遗憾的是,没有人能够回答这个问题。而且我仍然很想了解为什么这么简单的事情行不通。

与此同时,任何其他在同一问题上苦苦挣扎的人都应该查看 MSDN 论坛上的以下链接,以了解做同样事情的另一种方法。

http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/a282bb60-c099-4656-bf71-52ddc6153c28

我昨天在短短几分钟内就实现了它,效果很好。

于 2013-05-29T13:52:07.540 回答