有没有办法在.NET项目中打开和读取文本文件?我知道我可以使用System.IO.StreamReader类来为Windows文本文件执行此操作。
我想存储一些SQL脚本,用于在我的项目中的文本文件中升级我的数据库。由于我是用VB编写的,因此我不能将脚本直接粘贴到我的代码中,因为行继续,如果它是C#,我可以。这些是很长的脚本。
答案 0 :(得分:5)
项目中的文本文件不会添加到您的可执行文件中。您可以在.sql文件的属性中启用Copy to Output Directory
。这会将它们与程序集一起复制到bin
目录。
从那里,您的程序可以像任何其他文件一样阅读它们。
答案 1 :(得分:1)
在程序集中嵌入资源,然后使用ResourceManager
在运行时将它们读入Stream
或String
?
答案 2 :(得分:0)
您可以使用嵌入式资源,并在Assembly.GetManifestResourceStream返回的流上使用StreamReader来读取这些资源。
答案 3 :(得分:0)
我自己遇到了这个问题。 我可以看到Jeff接受了将源文件复制到项目文件夹中的解决方案。
然而,我不习惯在fileareas上放置db-create / drop / alter脚本。我发现这个问题后来又被问到了。以下solution I implemented使用嵌入式资源取得巨大成功。
我们的解决方案涉及分布在可能的数据库实例上的数据库。我们实现了一个解决方案,其中包含一个主数据库,其中包含'shard'数据库的所有设置信息。拥有'SqlUpdate'引擎,我们可以保持所有分布式分片的最新状态。