将任意数据附加到DirectoryInfo / FileInfo?

时间:2010-08-30 02:42:53

标签: c# sql filesystems fileinfo

我有一个类似于SVN的站点,但没有版本控制。用户可以上传并下载到Projects,其中每个Project在服务器上都有一个目录(带子目录和文件)。我想做的是将更多信息附加到文件,例如谁上传文件,下载次数等等。有没有办法为FileInfo执行此操作,或者我应该将其存储在一个表中,它将自己与绝对路径或其他东西相关联?这种方式听起来很狡猾且容易出错:\

2 个答案:

答案 0 :(得分:1)

可以使用NTFS(默认的Windows文件系统,我假设您正在使用)将数据附加到任意文件。你使用alternate data streams。 Microsoft将此用于扩展元数据,如Office文档中的作者和摘要信息。

但实际上,在我看来,数据库方法是合理的,广泛使用的,并且更不容易出错。除非您实际更改其内容,否则修改原始文件并不是一个好主意。

答案 1 :(得分:0)

正如Michael Petrotta所指出的,备用数据流是一个很好的想法。 Here's a C# tutorial with code.实际上,数据库是可行的方法。 SQL Compact和SQLite具有相当低的影响力且易于使用。