如何在Azure Functions中使用VSTS Package Management中的NuGet包?
如何在Azure Functions中使用VSTS Package Management中的NuGet包?
Azure Functions的一个好处是可以使用NuGet、npm等工具来引入自己的依赖项。如果在Azure Function中使用VSTS Package Management中的内部NuGet包作为依赖项,您应该如何在Azure Function的"usings"中包含它呢?
示例:我可能想利用我们的内部数据访问库、模型或业务逻辑,并使用VSTS Package Management作为我们团队管理内部依赖项的方式。我们不想将它们发布到公共的nuget.org库中。
谢谢帮助!
如何在VSTS Package Management与Azure Functions中使用NuGet包?
问题的出现原因:
在使用Azure Functions时,有时候需要引用私有NuGet存储库中的包。然而,Azure Functions默认只能引用公共的NuGet包,对于私有包需要进行额外的配置。
解决方法:
1. 首先,在配置文件中添加私有源。可以参考此处提供的信息:https://stackoverflow.com/questions/36707613。
2. 添加对自定义包的引用。可以参考此处提供的信息:https://learn.microsoft.com/en-us/azure/azure-functions/functions-reference-csharp#package-management。
示例 project.json 文件:
{
"frameworks": {
"net46":{
"dependencies": {
"Contoso.Models": "1.2.0",
"Contoso.DAL ": "1.2.0"
}
}
}
}
将 project.json 文件添加到函数的根目录中。
示例 nuget.config 文件:
将 nuget.config 文件添加到函数的根目录或者主机级别文件夹中(如果要在所有函数中使用)。
感谢Fabio的指导!我更新了一些示例文件,以便将来遇到此问题的人可以参考。