rubyを使用してmongoDBにオブジェクトを挿入しようとしていて、C#とNoRMドライバを使用して取得しようとしています。MongoDb:RubyでUUIDを挿入した後、C#でGUIDに変換できない
私はC#オブジェクト内でGuidを使いたいまで、すべてがうまく進んでいるようでした。
私は(このブログの記事http://blog.mikeobrien.net/2010/08/working-with-guids-in-mongodb-with-ruby.htmlにより示唆されるように)モンゴに挿入する前に、RubyでUUIDを設定するには、次のコードを使用:
BSON::Binary.new("d7b73eed91c549bfaa9ea3973aa97c7b", BSON::Binary::SUBTYPE_UUID)
C#でGUIDの例外「バイト配列をこのオブジェクトを取得する場合正確に16バイトの長さでなければなりません。投げられた。
管理シェルを使用して、オブジェクトの内容を検査しました。 GUIDプロパティがしかし
BinData(3,"ZDdiNzNlZWQ5MWM1NDliZmFhOWVhMzk3M2FhOTdjN2I=")
に設定されていた私はC#を使用して、同じGUIDを挿入した場合、GUIDプロパティが
BinData(3,"7T6318WRv0mqnqOXOql8ew==")
に私が間違ってやっている任意のアイデアを設定したのか?
ありがとうございました。最初は私たちが逆順になっている最初の3つのバイトグループ(c#の "ed3eb7d7-c591-bf49"、ルビーの "d7b73eed-91c5-49bf"しかし、どちらも同じ値( "17c + 7ZHFSb + qnqOXOql8ew ==")でMongoに保存されました。この質問につまずいた後http://stackoverflow.com/questions/5745512/how-to-read-a-net-guid-into-a-java-uuid私はC#が小さなエンドエンディアンとしてguidを格納することを認識しましたが、エンディアン。 – Castrohenge