Silverlight RIA Servicesでソリューションを開発しています。要件の1つは、サーバーへのブロッキング呼び出しを使用して実装しているクライアントへの「プッシュ」通知で、更新が受信されたときに返されます。これは一般的な構造を使用して実装しようと、私はこのデータ構造に来ている:RIAサービス変更トラッキング
public class Change
{
public ObjectType Type { get; internal set; } // objecttype is an enum
public int ObjectKey { get; internal set; }
public string PropertyName { get; internal set; }
public object OldValue { get; internal set; }
public object NewValue { get; internal set; }
//key required for RIA Services
[Key]
public Guid ChangeGuid { get; private set; }
}
この設計ではいくつかの明白な欠陥は別に
(これは単なるテストです)、プロパティOldValue
とNewValue
に表示されませんそのオブジェクトのタイプのために、クライアントになります。これらのプロパティの値は常にEntity Framework primitiveになります。
すべてを文字列に変換せずにクライアントにOldValue
とNewValue
を得る方法はありますか?
グーグルでは、検索結果が乱雑になるため、object
というキーワードが原因で、私は非常に遠くにいます。
私の問題に関する一般的な解決方法はありがたいです。
型がString型、DateTime型、その他のプリミティブ型のいずれかになり、コンパイル時にどの型が使用されるのかわからないのですか? –
@IsaacまさにEntity Frameworkオブジェクトのプロパティとして使用される任意の型になります。 http://msdn.microsoft.com/en-us/library/ee382832.aspx – Bas