gpt4 book ai didi

.net - 有没有一种方法可以从多个 .NET 项目创建一个 Azure Function App,并拥有所有这些项目的所有 Functions?

转载 作者:行者123 更新时间:2023-12-04 10:56:14 27 4
gpt4 key购买 nike

我们有一个具有多个函数的 Azure Function App,是使用 .NET 项目(名称:Project1)创建的。

我们希望将另一个 .NET 项目(名称:Project2)中的新 Azure 函数添加到现有的 Azure Function App,不覆盖从 Project1 部署的现有函数。目前,当我们从 Project2 部署 Azure Function 时,Project1 中的函数将被删除,Function App 仅包含 Project2 函数。

我们使用 Azure DevOps 发布管道部署该函数,并且我们还尝试从 Visual Studio 进行发布 - 两者的行为方式相同。

那么,有没有办法保留项目 1 中的功能 - 拥有两个 .NET 项目中的功能?

最佳答案

据我所知,目前还没有很好的解决方案能够满足您的需求,但是有一个解决方案不太适合您引用。

我在azure门户上创建了一个名为“huyrFirstFunapp”的函数应用程序,其中有一个函数“Function1”。点击“平台功能”-->“高级工具(Kudu)”。 enter image description here

在“kudu”页面中,导航到“调试控制台”-->“CMD”-->“站点”-->“wwwroot”。你可以看到文件夹“Function1”,一个“host.json”,如果你导入了一些外部模块,你还可以看到一个“bin”文件夹。

现在打开Visual Studio,里面有另一个功能项目。这里我有一个名为“hurySecondFunapp”的项目,其中有一个函数“Function2”。 enter image description here

右键单击“hurySecondFunapp”,然后单击“Build”,会生成一个“bin”文件夹和一个“Function2”文件夹,您可以在如下截图所示的目录中找到它们。 enter image description here

然后我们需要将“Function2”文件夹从本地拖到“kudu”页面(到我们导航到的“wwwroot”目录)。 “Function1”文件夹和“Function2”文件夹将共存于“wwwroot”目录中,然后我们需要合并两个“bin”文件夹。如果你的两个函数非常简单,并且不使用任何其他模块,我们只需要将本地“bin”文件夹中的“hurySecondFunapp.dll”和“hurySecondFunapp.pdb”拖到“kudu”页面中的“bin”文件夹中(如下所示),然后azure门户中的函数应用程序将显示其中的两个函数。 enter image description here

但是如果你的两个函数很复杂并且使用了很多模块或外部dll,那么这个解决方案将不是一个好方法。我们需要合并两个“bin”文件夹之间的差异,也许这会导致很多问题。所以只是一个供您引用的解决方案,我不确定它在您这边是否可以正常工作。

关于.net - 有没有一种方法可以从多个 .NET 项目创建一个 Azure Function App,并拥有所有这些项目的所有 Functions?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59170087/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com