2017-08-17 68 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

请比较我的和你之间的步骤,如果他们张贴的差异。