2016-12-02 6 views
0

上のC#のプログラムを書くとき、私はC#の初心者ですので、私と一緒にクマ。最新のdotnet Dockerコンテナをdotnetコマンドラインツールで実行していて、RestSharpを使用してリモートAPIへのREST要求を実行しようとしています。私はRestSharpが私のproject.jsonに追加されますように管理し、「DOTNETを復元]エラーメッセージなしで完了しますが、私は実際にコントローラにRestSharpを使用しようとすると、私はこのエラーを取得:欠落タイプ「ウリ」のLinux

/path/to/MyController.cs(18,30): error CS0012: The type 'Uri' is defined in an assembly that is not referenced. You must add a reference to assembly 'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'. Compilation failed.

私が知っていますこれはRestSharpの結果として起こっていると思います。なぜならRestSharpコードをすべてコメントアウトすると、エラーメッセージが消えてしまうからです。

私はそれはおそらく私がこのメッセージの最後にペーストします私のproject.jsonファイル、とは何かを持っていると思っています。 Linuxを使用している人にとっては、NuGetにアクセスすることはできません。私たちは手動でproject.jsonファイルを作成する必要があります。これはもともとdotnet用スキャフラーyeomanによって作成されました。あなたの助けのための

ありがとう!

 

    { 
     "dependencies": { 
     "Microsoft.NETCore.App": { 
      "version": "1.1.0", 
      "type": "platform" 
     }, 
     "Microsoft.AspNetCore.Mvc": "1.0.1", 
     "Microsoft.AspNetCore.Routing": "1.0.1", 
     "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", 
     "Microsoft.AspNetCore.Server.Kestrel": "1.0.1", 
     "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0", 
     "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0", 
     "Microsoft.Extensions.Configuration.Json": "1.0.0", 
     "Microsoft.Extensions.Configuration.CommandLine": "1.0.0", 
     "Microsoft.Extensions.Logging": "1.0.0", 
     "Microsoft.Extensions.Logging.Console": "1.0.0", 
     "Microsoft.Extensions.Logging.Debug": "1.0.0", 
     "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0", 
     }, 

     "tools": { 
     "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final", 
     "Microsoft.DotNet.Watcher.Tools": "1.1.0-preview4-final" 
     }, 

     "frameworks": { 
     "netcoreapp1.0": { 
      "dependencies": { 
      "RestSharp": "105.2.3", 
      "System.Net.Http": "4.3.0", 
      "System.Runtime": "4.3.0" 
      }, 
      "frameworkAssemblies": { 
      }, 
      "imports": [ 
      "net452", 
      "dotnet5.6", 
      "portable-net45+win8" 
      ], 
     } 
     }, 

     "buildOptions": { 
     "emitEntryPoint": true, 
     "preserveCompilationContext": true 
     }, 

     "runtimeOptions": { 
     "configProperties": { 
      "System.GC.Server": true 
     } 
     }, 

     "publishOptions": { 
     "include": [ 
      "wwwroot", 
      "**/*.cshtml", 
      "appsettings.json", 
      "web.config" 
     ] 
     }, 

     "scripts": { 
     "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ] 
     }, 

     "tooling": { 
     "defaultNamespace": "WebAPIApplication" 
     } 
+0

[OK]を...私はこの問題を軽減するために、私のproject.jsonを再構成することができますどのように任意のアイデア?私はnetcoreapp1.0と結婚していません。私はこのアプリをコーディングすることから始めました。私が本当に必要なのはRestSharpだけです。 – ArkieCoder

+0

RestSharpのV106のサポート.NET標準2.0ので、あなたのコードは、.NET Frameworkの下でRestSharp 105で働いていた場合 - それはまた、2 .NETのコアで動作しますRestSharp.NetCoreパッケージはRestSharpチームからではなく、我々がサポートされていません。それも更新されておらず、所有者はメッセージで応答しません。パッケージのソースコードも公開されません。 –

答えて

0

このproject.jsonは働いていたと私はnetcoreapp1.1でRestSharpを使用することができました -

{ 
    "dependencies": { 
    "Microsoft.NETCore.App": { 
     "version": "1.1.0", 
     "type": "platform" 
    }, 
    "Microsoft.AspNetCore.Mvc": "1.1.0", 
    "Microsoft.AspNetCore.Routing": "1.1.0", 
    "Microsoft.AspNetCore.Server.IISIntegration": "1.1.0", 
    "Microsoft.AspNetCore.Server.Kestrel": "1.1.0", 
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0", 
    "Microsoft.Extensions.Configuration.FileExtensions": "1.1.0", 
    "Microsoft.Extensions.Configuration.Json": "1.1.0", 
    "Microsoft.Extensions.Configuration.CommandLine": "1.1.0", 
    "Microsoft.Extensions.Logging": "1.1.0", 
    "Microsoft.Extensions.Logging.Console": "1.1.0", 
    "Microsoft.Extensions.Logging.Debug": "1.1.0", 
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0", 
    "RestSharp.NetCore": "105.2.4-rc4-24214-01" 
    }, 

    "tools": { 
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.1.0-preview4-final", 
    "Microsoft.DotNet.Watcher.Tools": "1.1.0-preview4-final" 
    }, 

    "frameworks": { 
    "netcoreapp1.1": { 
     "imports": [ 
     "dotnet5.6", 
     "portable-net45+win8" 
     ] 
    } 
    }, 

    "buildOptions": { 
    "emitEntryPoint": true, 
    "preserveCompilationContext": true 
    }, 

    "runtimeOptions": { 
    "configProperties": { 
     "System.GC.Server": true 
    } 
    }, 

    "publishOptions": { 
    "include": [ 
     "wwwroot", 
     "**/*.cshtml", 
     "appsettings.json", 
     "web.config" 
    ] 
    }, 

    "scripts": { 
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ] 
    }, 

    "tooling": { 
    "defaultNamespace": "WebAPIApplication" 
    } 
}