草庐IT

azure-pipelines-build-task

全部标签

c# - Webjobs 会自动续订 Azure 队列消息的租约吗?

当Webjobs通过QueueTrigger从Azure存储上的队列获取消息时,它会租用该消息(使其不可见)。如果(webjob的)触发函数需要很长时间来处理消息,这个租约是否会自动延长?或者我应该在函数中处理它?在这个链接上WindowsAzureQueues:ImprovedLeases,ProgressTracking,andSchedulingofFutureWork,作者声明“执行原始出列的工作人员可以延长消息的租约,以便它可以继续处理消息”注意:我尝试了一个等待20分钟的网络作业(使用QueueTrigger)。//WriteLogThread.Sleep(1200000)

c# - 什么是 Task.RunSynchronously?

我只是想知道这个方法有什么用?在什么样的场景下我可以使用这个方法。我最初的想法是RunSynchronously用于调用异步方法并同步运行该方法,而不会像.wait()那样导致死锁问题。然而,根据MSDN,Ordinarily,tasksareexecutedasynchronouslyonathreadpoolthreadanddonotblockthecallingthread.TasksexecutedbycallingtheRunSynchronously()methodareassociatedwiththecurrentTaskSchedulerandarerunonthe

c# - 返回 Task 的方法应该抛出异常吗?

返回Task的方法有两个报告错误的选项:立即抛出异常返回将异常结束的任务调用者是否应该期望两种类型的错误报告,或者是否有一些标准/协议(protocol)将任务行为限制为第二种选择?例子:classPageChecker{TaskCheckWebPage(stringurl){if(url==null)//ArgumentcheckthrowException("BadURL");//Someothersynchronouscheckif(!HostPinger.IsHostOnline(url))throwException("Hostisdown");returnTask.Fact

c# - 使用共享访问 key 上传到 Azure Blob 存储

UPD:这是我的implementedsolutiontothisproblem我正在尝试通过Azure.Storage库(而非RESTAPI)上传到Azureblob存储并通过共享访问key进行身份验证。我看过这个blogpost,但自发布以来API发生了变化,现在我无法获得相同的结果。这是我的:varblobClient=newCloudBlobClient(newUri(blobWithSas.BaseUri),newStorageCredentials(blobWithSas.Sas));//hereIreceive404errorvarblob=blobClient.GetB

c# - 静态初始化器中的 Task.Run

考虑以下代码。staticclassX{publicstaticintValue=Task.Run(()=>0).Result;}classProgram{staticvoidMain(string[]args){varvalue=X.Value;}}调用Task.Run然后在静态初始化程序中调用Result会导致程序永久卡住。为什么? 最佳答案 您在CLR的类初始化锁上看到了死锁。基本上,课上什么都没有X可以在类初始化之前使用。但是你的匿名方法()=>0被编译为该类的成员。在Task之前,类初始化不会完成可以完成,但是Task无法

c# - 为 Azure 函数生成输出 blob 的名称

使用Azure函数的绑定(bind)选项,可以根据从触发器派生的参数(例如触发函数的队列消息)指定要写入的Blob的名称;文档显示了一个例子。我的问题是:如果事先不知道blob名称,但实际上是作为函数执行的一部分计算的,那么最好的处理方法是什么?相关:如果函数可能会或可能不会根据其计算结果产生输出blob(或多个输出blob!),该怎么办?据我所知,现在AzureFunction的绑定(bind)机制在这些情况下并没有多大帮助,最简单的方法是引用一个执行azureblob编写“经典方式”的程序集。但是还有更惯用的方法吗? 最佳答案

c# - 如何在 Azure Key Vault 中序列化和反序列化 PFX 证书?

我有一堆字符串和pfx证书,我想将它们存储在AzureKeyvault中,只有允许的用户/应用才能获取它们。将字符串存储为Secret并不难,但是我如何以可以检索它并反序列化为X509Certificate2的方式序列化证书?C#中的对象?我尝试将其存储为key。这是Azurepowershell代码$securepfxpwd=ConvertTo-SecureString-String'superSecurePassword'-AsPlainText-Force$key=Add-AzureKeyVaultKey-VaultName'UltraVault'-Name'MyCertific

c# - 从 azure 表存储中获取所有记录

使用这个代码块try{StorageCredentialscreds=newStorageCredentials(accountName,accountKey);CloudStorageAccountaccount=newCloudStorageAccount(creds,useHttps:true);CloudTableClientclient=account.CreateCloudTableClient();CloudTabletable=client.GetTableReference("serviceAlerts");TableOperationretrieveOperatio

c# - Task.Run 和 Task.Factory.StartNew 之间不同的异常处理

我在使用Task.Factory.StartNew并trycatch抛出的exception时遇到问题。在我的应用程序中,我有一个长时间运行的任务,我想将其封装在Task.Factory.StartNew(..,TaskCreationOptions.LongRunning);但是,当我使用Task.Factory.StartNew时,异常没有被捕获。然而,当我使用Task.Run时,它的工作方式与我预期的一样,我认为它只是Task.Factory.StartNew的包装器(根据例如thisMSDNarticle).此处提供了一个工作示例,不同之处在于使用Task.Run时将异常写入控

c# - 无法将类型 'bool' 隐式转换为 'system.threading.tasks.task bool'

我在服务实现代码中遇到此错误:“无法将类型‘bool’隐式转换为‘system.threading.tasks.taskbool’”。你能更正我的代码吗?publicTasklogin(stringusn,stringpwd){DataClasses1DataContextauth=newDataClasses1DataContext();varmessage=frompinauth.Userswherep.usrName==usn&&p.usrPass==pwdselectp;if(message.Count()>0){returntrue;}else{returnfalse;}}