2017-08-17 51 views
1

現在,asp.net核心2.0在這裏我開始測試新的azure webjobs sdk。一切工作正常,但當我添加項目引用(netstandard 2.0類庫)我得到這個異常。 webjobs exceptionASP.NET Core 2.0 Azure Webjobs SDK添加項目引用拋出異常

堆棧跟蹤:

system.missingMethodException而發生的HResult = 0x80131513 消息=未找到方法:「System.Collections.Generic.Dictionary 2<System.String,System.Object> Microsoft.Extensions.Configuration.IConfigurationBuilder.get_Properties()'. Source=<Cannot evaluate the exception source> StackTrace: at Microsoft.Extensions.Configuration.FileConfigurationExtensions.GetFileProvider(IConfigurationBuilder builder) at Microsoft.Extensions.Configuration.FileConfigurationSource.EnsureDefaults(IConfigurationBuilder builder) at Microsoft.Extensions.Configuration.Json.JsonConfigurationSource.Build(IConfigurationBuilder builder) at Microsoft.Extensions.Configuration.ConfigurationBuilder.Build() at Microsoft.Azure.WebJobs.Host.ConfigurationUtility.BuildConfiguration() at System.Lazy 1.ViaFactory(LazyThreadSafetyMode模式) 在System.Lazy 1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor) at System.Lazy 1.CreateValue() 在Microsoft.Azure.WebJobs.Host.ConfigurationUtility.get_Configuration() 在Microsoft.Azure.WebJobs.Host.ConfigurationUtility.GetSettingFromConfigOrEnvironment(字符串settingName) 在Microsoft.Azure.WebJobs.JobHostCon C:\ Users \ RugerTek \ Documents \ Projects \ facturas \ CommunicationsProcessor中的CommunicationsProcessor.Program.Main(String [] args)上的Microsoft.Azure.WebJobs.JobHostConfiguration..ctor() \ Program.cs:line 13

在此先感謝!

回答

2

我也在我身邊測試過它。但我不能重現這個問題。以下是我所做的步驟。

第1步,創建一個.NET Core 2.0控制檯應用程序。 第2步,使用以下命令安裝Microsoft.Azure.WebJobs 3.0.0-beta1-10941。

Install-Package Microsoft.Azure.WebJobs -Version 3.0.0-beta1-10941 

第3步,向項目中添加2個類。

class Program 
{ 
    static void Main(string[] args) 
    { 
     Environment.SetEnvironmentVariable("AzureWebJobsDashboard", "mystorage-connectionstring"); 
     Environment.SetEnvironmentVariable("AzureWebJobsStorage", "mystorage-connectionstring"); 
     var config = new JobHostConfiguration(); 

     if (config.IsDevelopment) 
     { 
      config.UseDevelopmentSettings(); 
     } 

     var host = new JobHost(config); 
     host.RunAndBlock(); 
    } 
} 

public class Functions 
{ 
    public static void ProcessQueueMessage([QueueTrigger("myqueue")] string message, TextWriter log) 
    { 
     log.WriteLine(message); 
    } 
} 

第4步,創建一個名爲ALibrary的.NET Standard 2類庫。在我的課程庫中只有一個簡單的類型。

public class Class1 
{ 
    public string Property1 { get; set; } 
} 

第5步,添加對類庫的引用。

enter image description here

第6步,構建和運行我的控制檯應用程序(WebJob)。如果向隊列添加消息,我可以從控制檯窗口獲得正確的輸出。

enter image description here

請比較我的和你之間的步驟,如果他們張貼的差異。