2017-07-25 16 views
-1

json.netをjsonファイルに書き込むためにC#でJson.netを使用しようとしています。私がコードをビルドすると、うまく構築され、parser.exeが正常に作成されます。私はそれはそれは私にエラーファイルまたはアセンブリをロードできませんでした。Newtonsoft.Json

System.IO.FileNotFoudException: Could not load file or assembly 
'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4f...' 
or one of its dependencies. The system cannot file the file specified. 

を与えて実行する必要が別々のサーバ上でそのparser.exeを実行しようとするが、私はそれを実行する必要があるサーバにNewtonsoft DLLをコピーする必要があります。任意のヘルプは 大いに感謝されます。

+0

はい..すべての依存するアセンブリをコピーする必要があります嘘、ライブラリ、およびdllをexeを実行するターゲットの場所にコピーします。 –

+0

どのタイプのIDEを使用していますか? – EasyE

+0

私はビジュアルスタジオコミュニティエディションを使用しています2015 – jarus

答えて

0

おそらくバージョンに違いがあります。依存関係アセンブリには10.0.0.0が必要ですが、別のバージョンを参照しています。アプリケーションの設定にこれを追加:言及

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
      <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" /> 
      <bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
</runtime> 

バージョンは

単なる一例であり、また次のように参照の設定があることを確認してください。 enter image description here

+0

を参照してください。Visual Studiosは、これらのキーをnuget経由でインストールするときに設定ファイルに追加します。 – EasyE

+0

それは本当ですが、ナゲットなしではありません –

+0

こんにちは@Kees de Wit parser.exeを実行する必要があるサーバーにビジュアルスタジオをインストールする必要があります – jarus

2

は必ず参照DLLを作ります参照を右クリックして[プロパティ]を選択し、Copy LocalTrueに設定して、binフォルダに展開するように設定されています。

UPDATE:

何が起こっているあなたがローカルでDLLを参照していますが、あなたのプログラムを展開するとき、それはターゲットマシンから欠けているということです。

参照を常にコピーするように設定すると、binフォルダを含めて適切に展開すれば、binフォルダにはそのコピーが保存されます。

+0

何かをdownvoteする場合は、少なくとも理由を説明したり、何らかの形で貢献して回答を改善したりするメモを残すのが一般的です。 – JuanR

+1

私は自分自身を投票していた私はなぜわからない? Smh – EasyE

1

はい、BinフォルダにあるDebugフォルダまたはReleaseフォルダ全体をコピーする必要があります。アドバイスの言葉は、すべての最近の変更を行うためにソリューションを再構築することを確認します。

C:\フォルダ\プロジェクト\ ConsoleAppTest \ ConsoleAppTest \ binに\リリース

-OR-

C:\フォルダ\プロジェクト\ ConsoleAppTest \ ConsoleAppTest \ bin \ Debug

+0

あなたは彼が本当にすべてのファイルをコピーするのを忘れたと思いますか? –

+0

@KeesdeWitはい私は彼がしたと確信しています、私は彼が何をしようとしているのか、特に彼が受けているそのメッセージをよく知っています。 – EasyE

関連する問題