将项目从.NET 1.1转换为4.7:从数据库查询结果生成XML的最佳方法?

问题描述:

我有一个在.NET 1.1中创建的非常非常非常旧的Web项目,我想将它升级到最新的.NET Framework 4.7,以便我可以利用它的许多优点,包括性能。我在这里读过几篇类似的文章,但其中大多数是从2009年到2012年,可能不适用于今天的技术。将项目从.NET 1.1转换为4.7:从数据库查询结果生成XML的最佳方法?

到目前为止,我读过有关:

  • 数据集,以XML
  • FOR XML
  • LINQ
  • 和良好的醇”了System.XML

根据我的经验,我只试过System.XML,这是我在1.1代码中使用的。

在您的专家意见和/或经验,我应该使用哪些这些?或者有没有其他方法可以将我的数据库查询结果显示为XML,而不是上面列出的那些?

在我的项目注释:

  • 这是一个个人项目来练习我的编程技能(这是我一直没能练,现在很长一段时间)
  • DB查询实际上是一个存储程序最多可以显示1000行结果
  • DB是SQL Server 2008(没有钱升级:));代码是用C#
  • 这是主要显示DB查询作为XML所以没有必要保存在磁盘上
  • 的XML它应该能够在不到5秒钟

显示结果的web项目我只想知道从哪里开始,你认为哪种技术是最好的,所以我可以把我的读数集中在这个问题上。现在我只是感到困惑,不知所措。

非常感谢。

+0

如果原始代码是C#编写的,那么你还是应该使用C#。 c#将支持xml与库类XmlDocument或XDocument(我更喜欢2nd)。 c#还有一个库SqlClient,它将连接到SQL Server 2008。你可以从msdn SQL Server Express 2014免费下载,它提供了完整版本的大部分功能 – jdweng

+0

@jdweng是的,它是用c#编写的,我没有使用其他编程语言的计划。我编辑了我的问题以避免混淆,谢谢您指出。我实际上使用XmlDocument,你认为我应该升级到XDocument呢?谢谢! – Ramone

+0

XDocument比XmlDocument需要更少的指令,并且更简洁易懂,更易于理解代码。 XDocument也有更多的方法来提取数据。如果你已经有工作代码,你可能不想转换。 – jdweng

SQL Server已经有了一些很棒的本能地处理XML的能力。使用v2008,您可以使用FOR XML PATH

数据库是SQL Server 2008中(没有钱升级:))

您可以使用免费的Express版本...

你真正需要的是什么,取决于你想要什么使用XML。如果你唯一需要的是,从存储在你的rdbms中的数据创建一个XML,我会直接使用SQL Server ...如果你想修改你的XML,你可以使用XSLT

C#将很容易直接利用这个XML到XmlDocumentXDocument,让你任何形式的读/修改...(如果需要)

+0

谢谢!我的项目实际上是使用XmlDocument,我认为我应该升级到像Linq这样的更好的性能和什么,但我不确定。我认为XmlDocument是旧的(原谅我,如果不是),除此之外还有更好的选择?似乎我的理解是不正确的。 – Ramone

+0

@Ramone我理解正确吗?您想要读取存储在数据库中的一些数据。你想把它作为XML并在应用程序的某个地方使用它?在这种情况下,您应该直接在SQL Server中创建XML。 – Shnugo

+0

是的,这是正确的。如果我直接在SQL Server中创建XML,我担心数据库服务器的性能,因为它可能会产生多达一千行的结果。比方说,这是一个商业项目,有100个用户同时使用它,这还可以吗,在SQL Server中直接创建XML? – Ramone