0

我一直在开发一个.NET 5 控制台应用程序,它可以从/向我的 Windows 服务器和 Dropbox 下载和上传文件和文件夹。(附带说明一下,我计划在今年 11 月发布后升级到 .NET 6)。

到目前为止,一切都运行良好,但与其轮询,即以设定的时间间隔从 Dropbox 下载文件,使用Dropbox webhook并根据来自 Dropbox 的更改通知下载更改会更有效率。

在查看 .NET 下的 Dropbox webhooks 时,我很快发现没有.NET 5版本的 Dropbox webhooks NuGet 包。可供我的 Visual Studio 项目安装的唯一 NuGet 包是Microsoft.AspNet.WebHooks.Receivers.Dropbox(版本 1.2.2)。不幸的是,这个 NuGet 包适用于 .NET Framework 4.x 项目。
微软 ASP.NET WebHooks

以下是安装此 NuGet 包后与不兼容相关的相关警告:

Warning NU1701  Package 'Microsoft.AspNet.WebApi.Client 5.2.2' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework 'net5.0'. This package may not be fully compatible with your project.
Warning NU1701  Package 'Microsoft.AspNet.WebApi.Core 5.2.2' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework 'net5.0'. This package may not be fully compatible with your project.
Warning NU1701  Package 'Microsoft.AspNet.WebHooks.Common 1.2.2' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework 'net5.0'. This package may not be fully compatible with your project.
Warning NU1701  Package 'Microsoft.AspNet.WebHooks.Receivers 1.2.2' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework 'net5.0'. This package may not be fully compatible with your project.
Warning NU1701  Package 'Microsoft.AspNet.WebHooks.Receivers.Dropbox 1.2.2' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework 'net5.0'. This package may not be fully compatible with your project.

我怀疑这个 .NET 4.x Framework NuGet 包实际上可能在 .NET 5 下工作,但我还没有尝试过。但我不喜欢我的项目包含整个 .NET 4.x Framework 文件以及所需的 .NET 5 文件这一事实。

问题:其他人正在做什么以使 webhook 在 .NET 5 或 .NET 6 下工作?

如果这是控制台应用程序的有效选项,我很乐意使用其他技术让 webhook 在 .NET 5 下工作,例如使用 Javascript/nodeJS。

也许我应该使用 .NET Core 3.1,因为它是 LTS 版本,并且它确实包含 .NET Core、Microsoft ASP.NET Core WebHooks下受支持的 Dropbox webhooks NuGet 包。但是我已经在 .NET 5 上投入了大量的时间和精力。帮助!

4

1 回答 1

0

好的,为了帮助其他人,我设法使用带有直接 GET 和 POST 方法的 .NET Core 5 Web API 应用程序项目对此进行了编码......

[HttpGet]
public ActionResult Get(string challenge)
{
    return Content(challenge);
}

[HttpPost]
public async Task <ActionResult> Post()
{
 .....
 .....
}

感谢曼森朝着正确的方向推动。

于 2021-11-04T01:31:54.553 回答