我对C#编译器如何处理前后增量和减量有点困惑.
当我编写以下代码时:
int x = 4;
x = x++ + ++x;
Run Code Online (Sandbox Code Playgroud)
x之后会有10的价值.我认为这是因为预增量设置x为5,这使得它的5+5 计算结果为10.然后后增量将更新x为6,但不会使用此值,因为这10将被分配给x.
但是当我编码:
int x = 4;
x = x-- - --x;
Run Code Online (Sandbox Code Playgroud)
然后x将是2之后.任何人都可以解释为什么会这样吗?
我有以下设置:
现在,当我跑
nuget spec
Run Code Online (Sandbox Code Playgroud)
创建了B.nuspec.
然后我跑了
nuget pack B.csproj -verbose
Run Code Online (Sandbox Code Playgroud)
但是在创建的B-package中,它们对A-package没有依赖性.nuget pack命令告诉我它已找到packages.config文件(其中包含对A-package的依赖关系),但随后它显示"Dependencies:None".
我错过了什么?可能问题是A-package只能在我的本地软件包存储库中找到?如何让nuget.exe知道这个本地存储库?
非常感谢!
关于Azure函数的EventHubTrigger,我有点困惑.
我有一个IoT Hub,并且正在使用其eventhub兼容端点来触发Azure功能,该功能将处理和存储接收到的数据.
但是,如果我的函数失败(=抛出异常),那个函数调用期间正在处理的消息(或消息)将丢失.我实际上希望Azure函数运行时再次处理消息.具体来说,我希望这种行为是因为EventHubTrigger在功能应用程序存储帐户中保留检查点,以便跟踪它必须继续在事件流中的位置.
EventHubTrigger的文档甚至说明了这一点
如果所有功能执行成功且没有错误,则会将检查点添加到关联的存储帐户
但是,即使我故意在我的函数中抛出异常,检查点也会更新,并且不会再次收到消息.
我对EventHubTriggers文档的理解是错误的,还是EventHubTriggers实现(或其文档)错了?