以前のバージョンのCommerce ServerからのOrderデータがあり、そのOrderオブジェクトのWeakly Typed Propertiesを使用して任意のデータをSQLテーブルのMarshalledDataカラムにシリアル化している場合に、それらをCommerce Server 10で逆シリアル化しようとすると、以下のエラーが表示される可能性があります:
System.Runtime.Serialization.SerializationException: Unable to find assembly 'Microsoft.CommerceServer.Runtime, Version=6.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
このエラーは、Orderシステムがデータを、既に廃止されたMicrosoft.CommerceServer.*と命名されている(またはそのカスタムの派生)タイプ名に逆シリアル化しようとすることに起因しています。
このエラーは、以下の場合に発生します:
この問題は、Commerce Server 10.0およびそれ以降のバージョンで発生します。
Order Object Serialization Bindingsを使用してCommerce Serverの以前のバージョンからのマーシャリングされたデータを逆シリアル化するには、以下の手順を実施してください:
註:「OldType」に指定されている値が、アセンブリ内に存在する必要はありません。古いタイプはインスタンス化されず、内部でLookupとして使われることになります。
Commerce Serverの標準実装のタイプを使用する際に必要なSerializationBindingsの変更の例については、以下を参照してください。独自の派生型を持っている場合、これを拡張する必要があります。
SerializationBindingsの詳細情報につきましては、Commerce Server 10でインストールされたコアCommerce Serverドキュメントのヘルプ ファイル配下の「SerializationBindings Element」節を参照してください。
<SerializationBindings> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.LineItem , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.LineItem, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.Basket , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.Basket, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Orders.StatusCodes , Microsoft.CommerceServer.Orders.CrossTierTypes ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Orders.StatusCodes, CommerceServer.Core.Orders.CrossTier,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.WeaklyTypedPropertyDictionary , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.WeaklyTypedPropertyDictionary, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.OrderAddressCollection , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.OrderAddressCollection, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.OrderFormCollection , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.OrderFormCollection, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.OrderForm , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.OrderForm, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.ShipmentCollection , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.ShipmentCollection, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.PromoCodeRecord , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.PromoCodeRecord, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.PromoCodeRecordCollection , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.PromoCodeRecordCollection, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.LineItemCollection , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.LineItemCollection, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.PromoCodeStringCollection , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.PromoCodeStringCollection, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.PaymentCollection , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.PaymentCollection, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.OrderAddress , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.OrderAddress, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.Shipment , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.Shipment, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Inventory.InventoryCondition , Microsoft.CommerceServer.CrossTierTypes ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Inventory.InventoryCondition, CommerceServer.Core.CrossTier,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.CreditCardPayment , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.CreditCardPayment, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Orders.PaymentMethodTypes , Microsoft.CommerceServer.Orders.CrossTierTypes ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Orders.PaymentMethodTypes, CommerceServer.Core.Orders.CrossTier,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.ShippingDiscountCollection , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.ShippingDiscountCollection, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.DiscountApplicationRecordCollection , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.DiscountApplicationRecordCollection, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Runtime.Orders.ShippingDiscountRecord , Microsoft.CommerceServer.Runtime ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Runtime.Orders.ShippingDiscountRecord, CommerceServer.Core.Runtime,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Orders.DiscountType , Microsoft.CommerceServer.Orders.CrossTierTypes ,Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Orders.DiscountType, CommerceServer.Core.Orders.CrossTier,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> <SerializationBinding OldType="Microsoft.CommerceServer.Orders.PromoCodeState, Microsoft.CommerceServer.Orders.CrossTierTypes, Version=6.0.1.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" NewType="CommerceServer.Core.Orders.PromoCodeState, CommerceServer.Core.Orders.CrossTier,Version=10.0.0.0,Culture=neutral, PublicKeyToken=f5c79cb11734af7a"/> </SerializationBindings>