函数的同一文件夹中读取文件

函数的同一文件夹中读取文件

本文介绍了是否可以从存在 Azure 函数的同一文件夹中读取文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的 Azure C# 函数中,我需要读取一个 .txt 文件.我在 Visual Studio 中制作 .txt 文件并将其设置为始终复制".

In my Azure C# function I need to read a .txt file. I make the .txt file in Visual studio and set it to "copy Always".

现在我正在使用这段代码来读取文件

Now I am using this code to read the file

var dir = System.IO.Path.GetDirectoryName(
    System.Reflection.Assembly.GetEntryAssembly().Location);

var path = System.IO.Path.Combine(dir, "twinkle.txt");

此代码不起作用.当我打开文件夹时 dir 的值.它把我带到这个目录 ""C:Users{username}AppDataLocalAzure.Functions.Cli1.0.9""

this code doesn't work. When I open the folder which is the value of dir. It lead me to this directory ""C:Users{username}AppDataLocalAzure.Functions.Cli1.0.9""

如何在 Azure 函数中存储一个简单的 txt 文件.或者我需要 Azure 存储.

How I can store a simple txt file in Azure function. Or I need Azure Storage for this.

我还能做些什么来完成这项工作.

Anything else I can do to get this done.

显示已复制文件的更新

推荐答案

这里是如何到达正确的文件夹:

Here is how to get to the correct folder:

public static HttpResponseMessage Run(HttpRequestMessage req, ExecutionContext context)
{
    var path = System.IO.Path.Combine(context.FunctionDirectory, "twinkle.txt");
    // ...
}

这会将您带到包含 function.json 文件的文件夹.如果你需要进入 bin 文件夹,你可能需要上一级,然后附加 bin:

This gets you to the folder with function.json file. If you need to get to bin folder, you probably need to go 1 level up, and then append bin:

// One level up
Path.GetFullPath(Path.Combine(context.FunctionDirectory, "..\twinkle.txt"))

// Bin folder
Path.GetFullPath(Path.Combine(context.FunctionDirectory, "..\bin\twinkle.txt"))

这篇关于是否可以从存在 Azure 函数的同一文件夹中读取文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-29 12:47