0

我通过在 c#.net 中导出我的 SQLite 数据库生成了一个 XML 文件。我生成的 XML 就像-

<root>
   <name1>
      <names>
         <id>5</id>           
         <from>Germany</from>
         <to>France</to>
         <through>
            <via>
                 <id>7</id>
                 <routeNo>5<routeNo>
                 <route>Vienna<route>
             </via>
         </through>           
     </names>
     <names>
         <id>10</id>           
         <from>US</from>
         <to>Canada</to>
         <through>
            <via>
                 <id>8</id>
                 <routeNo>10<routeNo>
                 <route>Mexico<route>
             </via>
         </through>           
     </names>
   </name1>
</root>

我正在尝试导入此 XML 文件并将所有数据重新插入一个空的 SQLite 数据库。我需要在插入 SQLite 数据库之前验证内容。我从现有的 XML 文件创建了一个 XSD 文件。我在这里使用了 NDbUnit 库。我将数据从 XML 导入 SQLite 数据库的代码如下 -

string connectionString = "Data Source=emptyDB.sqlite;Version=3;New=True;Compress=True;";
        NDbUnit.Core.INDbUnitTest Database = new NDbUnit.Core.SqlClient.SqlDbUnitTest(connectionString);

        Database.ReadXmlSchema("myFlatXml.xsd");
        Database.ReadXml("myFlatXml.xml");    

        Database.PerformDbOperation(NDbUnit.Core.DbOperationFlag.CleanInsertIdentity);

我使用了从 XML 文件生成的 XSD 文件,但似乎我必须从我的 sqlite 数据库创建 XSD。问题是 sqlite manager 不支持将数据库导出到 XSD 文件。此外,我找不到任何使用 NDbUnit 创建 XSD 的明确文档。有人可以帮忙吗?

4

1 回答 1

1

NDbUnit框架正是您所需要的。所以没必要弄脏你的手。也可通过 NuGet 获得。

于 2014-01-14T08:05:08.263 回答