在我的Visual Studio 2013解决方案中,我添加了一个文件夹“mAppData”,其中包含应用程序的一些静态内容。 其中一个文件是Textfile(“imprint.txt”)。
在电话页面上,我显示此文件的内容。这很好。
有没有办法在运行时替换此文件?我想从网上下载新内容,并将此文件替换为下载的内容。
答案 0 :(得分:0)
而不是下载和替换" imprint.txt"你可以简单地将印记作为文本下载(来自你的imprint.txt - 在线存储)并显示它:
var client = new System.Net.WebClient();
client.DownloadStringCompleted += (sender, args) => MessageBox.Show("downloaded imporint: " + args.Result);
client.DownloadStringAsync(new Uri("http://yourSite.ch/imprint.txt"));
我的示例只显示带有下载文本的MessageBox。但是,您可以更新文本控件或类似文件。
如果您希望即使临时脱机也可以使用内容,则可以将文件存储在文件存储中。 考虑在构建中为不同语言添加多个文件,并根据手机的本地化加载文件。
但是 - 在运行时不允许替换解决方案的现有文件。将此视为安全功能。如果应用程序的代码库在运行时可能会发生变化,则攻击者可以注射您的代码。
答案 1 :(得分:0)
您无法在运行时更改包内容,它是只读的。
您可以在本地存储数据的地方是隔离存储。您应该做的是在首次启动时在隔离存储中创建一个文件,用于存储文件的原始内容(" imprint.txt"),然后您可以在任何时候更改它想。
这是一个教程,介绍如何在隔离存储中读取和写入文本:All about WP7 Isolated Storage - Read and Save Text files