2017-08-30 10 views
0

私が作成している新しいWebJobsプロジェクトで使用したい.NET Core 2.0で作成されたクラスライブラリがたくさんあります。 WebJobsプロジェクトは.NET Framework 4.7を対象としています。WebJobでの.NET Core 2.0ライブラリの使用.NET Framework 4.7をターゲットにして

私はそれらを参照しようとすると、私は読み込みエラーを取得:アイデンティティと

アセンブリ 'MyNetCore20Library' を...持っている「System.Runtime、 バージョン= 4.2.0.0を使用しています...参照アセンブリのアイデンティティと 'System.Runtime' より高いバージョン 'System.Runtime、バージョン= 4.1.2.0、 カルチャニュートラル、PublicKeyToken = = b03f5f11d50a3a'

私は.NETのコアを使用することができますどのように任意のアイデア新しいWebJobsプロジェクトの2.0ライブラリ

P.S.残念ながら、.NETコアでWebJobを作成することはまだできません。なぜなら、私は2つのフレームワークを混在させて一致させようとしているからです。それについて狂っていないが、それにもかかわらず私はそれを行うことができるはずです。

答えて

2

あなたの説明によると、net core2.0コンソールアプリケーションを使用してWebジョブを作成することをお勧めします。

1. net core 2.0プロジェクトを作成しました。

次に、Nuget Package ManagerからMicrosoft.Azure.WebJobs(3.0.0-beta2)をインストールします。以下のように

enter image description here

2.Changeコンソールアプリケーションのメインメソッドコード:Microsoft.Azure.WebJobsを用い

。 using System; using System.IO;

namespace NetCore2Webjob 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Environment.SetEnvironmentVariable("AzureWebJobsDashboard", "connection"); 
      Environment.SetEnvironmentVariable("AzureWebJobsStorage", "storage connection"); 
      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); 
     } 
    } 
} 

3.コンソールアプリケーションを公開するには、[発行]をクリックします。

enter image description here

enter image description here

4.Locate publishoutputフォルダとrun.cmdファイルを作成しました。

はrun.cmdを開き、コードの下に追加するには、メモ帳を使用します。

dotnet {yourporjectname}.dll 

例:

dotnet NetCore2Webjob.dll 

5.Compress全体publishoutputフォルダをzipファイルとして。

6.ウェブジープスを開き、このジップをアップロードします。

enter image description here

7。

enter image description here

+0

グレート:ウェブアプリはwebjob

の検索結果をインストール待って!ありがとうございました!私は解決すべきもう一つの問題しか持っていません:DIを使う - preferebly through Ninject。この問題に関する私の他の記事は次のとおりです:https://stackoverflow.com/questions/45968628/using-ninject-in-net-core-console-appもう一度あなたの助けに感謝します。 – Sam

+0

さらに進んだので、.NET FrameworkでWebJobを作成する必要があるように見えます。これは、.NET Frameworkの一部であるようなmscorlibが必要なためです。このソリューションはうまくいくのですか?私の他の投稿を見る:https://stackoverflow.com/questions/46017931/no-parameterless-constructor-error-in-webjobs-with-net-core-and-ninject?noredirect=1#comment79131285_46017931 – Sam

関連する問題