【发布时间】:2014-05-12 18:23:42
【问题描述】:
我正在尝试构建一个读取新闻 RSS 提要的应用程序,然后将元素放入数据库中。我以后可以从中为每个主题“标题”添加统计信息。
我认为最好的方法是编写一个脚本,将 xml 数据解析为一个列表,然后将此列表插入数据库,同时检查重复项?
或者你有什么更聪明的办法吗?
主要问题,如何将列表插入数据库并同时防止重复?谢谢
【问题讨论】:
-
你认为什么是重复的?来自 RSS 提要的重复主题或数据库中的重复主题行?我假设您的数据库应该能够为每个主题存储多行。
-
RSS 提要中的重复主题。每个主题都是独一无二的,所以我唯一要检查的是当前数据库,所以我没有重复的帖子。
-
那么我相信 cost 有一个很好的答案来解决您的用例。这将使您不断地查找以检查重复项。只需确保哈希集的关键是主题即可。
-
为什么不一次向数据库中插入一条记录呢?查找和拒绝重复是数据库擅长的。
-
如果您使用的是 SQL 服务器(正如您的标签所建议的那样),为什么不将 unique constraints 添加到您的数据库并避免自己检查重复项?表索引非常擅长检查重复项。
标签: c# asp.net sql-server linq