读取配置文件以在azure函数中索引作业

时间:2017-05-03 20:05:11

标签: c# function azure media indexer

我试图制作一个Azure函数来索引MP4文件。我正在寻找一种方法来读取索引器所需的配置文件。我已经制作了一个控制台应用程序,可以从我的硬盘中读取配置文件,并且工作正常。但是如何读取Azure函数中的文件?

例如:

EncodeFile(asset, @"e:\index.xml");

public static IAsset EncodeFile(IAsset asset, string configurationFile)
{
    IJob job = _context.Jobs.Create("Media Encoder Standard Job");

    string MediaProcessorName = "Azure Media Indexer";
    IMediaProcessor processor = GetLatestMediaProcessorByName(MediaProcessorName);

    string configuration = string.IsNullOrEmpty(configurationFile) ? "" : File.ReadAllText(**configurationFile**);

    ITask task = job.Tasks.AddNew("My encoding task",
        processor,
        **configuration**,
        TaskOptions.None);

1 个答案:

答案 0 :(得分:0)

  

但是如何读取Azure功能中的文件?

我们可以将该文件放在Azure功能站点下。

对于Azure功能应用程序,如果我们创建一个函数,那么它将在WebApp上创建一个具有函数名称的文件夹。如果我们想要读取文件,我们可以将文件放到Azure kudu tool的文件夹中  (https://yourfunctionsite.scm.azurewebsites.net)。访问Azure Web App D:\ home。我们可以从Azure WebApp Sandbox获取更多详细信息。

  

每个Azure Web App都有一个由Azure Storage存储/支持的主目录。此网络共享是应用程序存储其内容的位置。此目录可用于具有读/写访问权限的沙箱。

enter image description here

在您的情况下,代码可以更改为:

string configuration = string.IsNullOrEmpty(configurationFile) ? "" : File.ReadAllText(Environment.GetEnvironmentVariable("HOME") + @"\site\wwwroot\functionname\filename);

我也做了一个测试。它在我身边正常工作。

enter image description here