2017-02-28 3 views
0

エミュレータを使用してローカルのDocumentDb開発を行っています。私のDocumentDbエミュレータは1〜2年前です。 DocumentDb Clientの最新のNugetコンポーネントをダウンロードすると、接続できず、エラーが表示されます:無効なAPIバージョンdocumentdb有効なx-msバージョンのヘッダー値が渡されるようにするDocumentDbクライアントが無効なAPIバージョンを受信して​​います。documentdb有効なx-msバージョンのヘッダー値が渡されていることを確認してください。

だから私はやりたいことがある(私は思う)。それは私の古いDocumentDbエミュレータのインストールと一致するようにx-ms-versionヘッダーを調整します。問題は、リクエストのバージョン番号を変更するにはどうすればいいですか、またバージョン番号を変更する必要がありますか?

私は、DocumentDbローカルエミュレータを常にアップグレードしているとは限りません。特に私のデータのバックアップ/リストアがない場合

ここではどのような方法が最適ですか?

ありがとうございます!

ジェームズ言及したこのdocumentとして

+0

私ができることに気づいたのは、古いDocumentDb Clientパッケージへのアップデートだけですが、これはやや後方にあるようです。誰にも他のアイデアはありますか? –

答えて

2

についてX-MS-バージョンDocumentDBのREST APIの

The version of DocumentDB REST service. The latest version is used when the header is not provided.

そしてAzureのDocumentDBサービスでサポートRESTのAPIバージョンの

、あなたはを参照してください可能性がありこの link

私がテストしMicrosoft.Azure.DocumentDB.Core 1.1.0を使用している場合Microsoft.Azure.DocumentDB.Core 1.0.0ためx-ms-version2016-07-11であろうが、x-ms-versionは、2017-01-19として設定されることを発見しました。

Microsoft.Azure.DocumentDB.Core 1.1.0は、2017年2月16日にリリースされました。最新のDocumentDB Emulator version 1.11.136.2をダウンロードできます。

The question is, how do I change the version number on the request, AND what should I change the version number to?

DocumentDbクライアントライブラリは、私が知られているように、ライブラリはx-ms-versionを構成するための方法をご提供していない、あなたのdocumentdbにアクセスするための簡単な方法を提供します。

I don't think its an acceptable solution to constantly be upgrading my DocumentDb local emulator. Especially when there is no backup/restore of my data etc.

Azure DocumentDBエミュレータは、開発目的でAzure DocumentDBサービスをエミュレートするローカル環境を提供するだけです。

Data created in one version of the DocumentDB Emulator is not guaranteed to be accessible when using a different version. If you need to persist your data for the long term, it is recommended that you store that data in an Azure DocumentDB account, rather than in the DocumentDB Emulator.

あなたは常にあなたのデータを永続化するために、あなたのDocumentDbエミュレータをアップグレードしたくない場合は、お使いのDocumentDbエミュレータにアクセスするためにDocumentDBクライアントライブラリの指定されたバージョンを活用する必要があります。

+0

DocumentDB.Coreライブラリバージョン1.3.0を使用してこのバージョンのエラーが発生しましたが、これは最新のエミュレータにアップグレードすることで解決されたことを確認できます(執筆時点では1.13.58.2)。私の場合、データは保持されていました。私は以前のバージョンをアンインストールしませんでした。新しいバージョンのインストーラは、既存のインストールを自動的に検出してアンインストールします。多分それは誰かを助けるかもしれません...私は、クライアントの古いバージョンでエミュレータを使用しようとすると、この問題に直面することにも懸念していますか?既存のプロダクションアプリのデバッグを教えてください。 – dmcquiggin

関連する問題