我目前正在学习C#和.NET(来自UNIX背景),并且刚刚开始编写媒体播放器。我希望有关于存储歌曲内部数据库的最佳方法的一些建议。 SQL?某种文本文件?我在这方面没有任何经验,所以所有的观点都会非常感激。
干杯!
答案 0 :(得分:4)
您应该使用SQLite,并且可以使用LINQ来充分利用C#3.5。
答案 1 :(得分:1)
还有SQL Server Compact。 Linq to Sql也适用于此。
答案 2 :(得分:1)
这里涉及一系列要求,仅举几例:
对于复杂的结构化数据文本文件不会很好。
用于存储二进制文件我不会使用XML
所以它可能会是:使用什么Sql数据库?您可以搜索有关SQLite,Sql Express,SqlCE等的讨论。
答案 3 :(得分:0)
在我们继续推荐一种技术而不是另一项技术之前,可能应该提出一个更基本的问题......
建筑学。从上面的简要描述看,您正在构建的是类似Windows Media Player库的功能。如果是这种情况,那么SQL数据库的建议似乎是合适的,但是文件系统同步的复杂性(您不打算将媒体文件转换为单片数据存储区,是吗?)
如果您只是担心持久播放列表......基于文本的格式似乎是合适的。
播放列表可能希望基于文本(对我而言,包括对象图的XML表示),但是库信息似乎希望位于更强大,更具可查询性的数据存储区中。
对象数据库也可能是合适的,因为与其他建议相比,它允许您使用更加透明的持久性视图。在学习过程中隔离您正在处理的新主题的数量可能是管理学习曲线的重要方法。 db4o有一个.Net变种,我最近没有看过。