繁体   English   中英

将数据附加到asp.net mvc项目结构/树中的文本文件中(如何解决文件?)

[英]Appending data to a text file within asp.net mvc project structure/tree (how to address the file?)

我正在为一个项目的简单登陆页面工作,该项目在几个月内被推迟发布。 人们可以使用表单注册以在发布时得到通知。 目前,该表单只会生成一封电子邮件,说“电子邮件地址foo@bar.com希望在发布时收到通知”并将其发送给我。

现在我想将表单中的数据保存到一个简单的文本文件中,以便以后可以更轻松地将其提供给我的电子邮件程序。 在Visual Studio中,我在我的项目中创建了一个名为“subscriptions”的新文件夹,并在该文件夹中创建了一个emptry文本文件release_notification_emails.txt“。我尝试使用StreamWriter写入文件,但它失败了。这是我的代码:

using (StreamWriter writer = new StreamWriter("/subscriptions/release_notification_emails.txt", true))
        {
            writer.WriteLine(eMail);
        }

它会导致以下异常/错误

Could not find a part of the path 'C:\subscriptions\release_notification_emails.txt'.

所以看起来它将StreamWriter的path参数视为相对于文件系统根而不是项目根,这是有问题的。 我一直使用相对于项目根目录的路径来包含图像,脚本,视图等。在我看来,这是asp.net执行此操作的标准方式(尽管我是asp.net的新手,但你可能告诉)。

所以我的问题是:如何写入项目/解决方案文件树中的文本文件? 它不必使用StreamWriter我只是想让它工作。 它需要位于项目文件树中,以便由版本管理系统跟踪,并且在项目上工作的同事具有相同的文件。

您需要添加Server.MapPath以获取物理路径。

new StreamWriter(Server.MapPath("/subscriptions/release_notification_emails.txt"), true)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM