问题标签 [csx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
440 浏览

azure - 如何在 Azure Function App 中使用 System.Runtime.Caching

我想在 Azure Function App 的无服务器函数中的函数调用之间使用一些值的简单内存缓存。我正在使用 C# 脚本文件直接在 Azure 门户中进行开发。根据Mark Heath 的这篇博客文章中的建议 2),我的函数的 csx 文件中有以下几行:

这应该是本文档中的 System.Runtime.Caching 程序集

但是在编译时(保存在 Azure 门户中),我得到:

这是我的host.json,供参考:

我需要在这里添加一些东西吗?我原以为,添加#r对程序集的引用就足够了。

0 投票
1 回答
171 浏览

azure - 从 Azure Function 中的 C# 脚本 (csx) 访问 TelemetryConfiguration 对象

我需要将 TelemetryProcessor 注入现有 TelemetryConfiguration (Application Insights) 以修改默认 Azure Function 行为。

有一些示例如何通过 c# 项目的依赖注入来实现。我想知道是否有办法从 C# 脚本(csx)访问它。

看起来可以通过TelemetryConfiguration.Active但编译器发出警告说它已过时:

0 投票
0 回答
22 浏览

c# - .csx 文件:将所有 using 语句和 #r 合并到一个文件中

我有 .csx 文件,其中包含很多 using 语句和 #r 语句,但这些文件中的每一个都具有相同的 using 和 #r 语句。有没有办法抽象这个?就像拥有一个文件reference.csx或其他一些可以使用的文件扩展名一样,它不是拥有多行 using 和 #r 语句,而是只有 1(或者甚至更好,一种使其为 0 的方法)。

0 投票
1 回答
132 浏览

c# - 为什么我在我的 c# 脚本中得到 System.NullReferenceException 而我的相同代码的可执行文件正在工作?

我有以下 .csx 脚本:

当我使用它运行时,dotnet script我收到此错误:

如果我在 Visual Studio 中编译以下代码,一切正常:

为什么 ?我怎样才能让我的 .csx 脚本工作?

0 投票
1 回答
44 浏览

c# - 从 C# 应用程序加载 CSX 脚本的最佳方法是什么?

dotnet-scriptCSI等工具允许用户像“脚本”一样编写、编译和运行 C#,而不是将他们的代码包含在完整的预编译项目中。这些工具非常适合命令行使用,但在将动态 C#“脚本”集成到更大的 C# 应用程序方面并没有提供太多帮助。

如果我有一个现有的 C# 应用程序希望通过 .csx“脚本”将其他类加载到其现有的命名空间中,我该怎么做?可能吗?

0 投票
0 回答
66 浏览

azure-functions - Azure Functions 脚本 (.csx) 能否以 .net 6 为目标?

主要问题

有什么方法可以让 Azure Function C# 脚本 (.cxs) 在 .NET 6 上运行?

背景

我们有一个配置为使用运行时版本(即FUNCTIONS_EXTENSION_VERSION.~4

在该应用程序中,我们有一个具有以下function.proj内容的函数:

run.csx文件中,我有以下引用和using指令:

这工作正常:

但我想从netstandard2.0(我理解它.NET Framework 4.8 运行时相关联)升级到net6.0(.NET 6)。

将文件中的 TargetFramework 更改为net6.0(甚至netstandard2.1function.proj会导致出现警告:

然后尝试保存/编译 csx 文件会导致错误:

我在链接文档中注意到他们netstandard2.0在示例function.proj文件中使用。我还发现了这个 github 问题,在 2020 年 7 月,他们说:

对于 C# 脚本函数,我们建议您在 Function.proj 中以 .Net Standard 2.0 为目标。
...
CSX 的依赖关系解析将针对 .NET Standard 2.0。对于 netcoreapp3.1,建议使用预编译项目。

现在,我们到了 2022年。自去年 11 月以来, .NET 6.0 已在 Azure Functions 中普遍可用。Azure 的Functions Versions 文档将 .NET 6.0 列为运行时版本 4.x 中 C# 支持的框架。我认为Azure Functions Scripts 将支持 .NET 6.0,但我在这个方向上所做的每一次尝试都导致了神秘的警告和错误消息。

我只是错过了什么,还是 Azure Functions Scripts 仍然停留在netstandard2.0

我尝试过的事情

我尝试添加<AzureFunctionsVersion>v4</AzureFunctionsVersion>到我这里function.proj提到的。那没有任何区别。

我尝试使用#r

但这只是给了我另一个关于找不到元数据文件的错误。

我尝试使用这个:

...但这似乎使编译器挂起: