データベースに動的オブジェクトを保存します。データベーステーブル名は動的に設定されます。だからクラスは一切ありません。設定C#動的オブジェクトの型名
private static dynamic CreateModel()
{
var model = string.Format("{{'id': '{0} - {1}', 'name':' Path - ', 'length':'{2}' }}", Guid.NewGuid(), DateTime.Now,new Random().NextDouble() * 10);
return JsonConvert.DeserializeObject(model);
}
これは動的オブジェクトを作成します。そして、これをエンティティ・フレームワークの汎用リポジトリに追加します。
using (var repository = new EFRepository(new Context()))
{
repository.SaveOrUpdate<????>(CreateModel())
}
タイプ名を設定できません。私はここでランダムな名前を設定することができます。
(repository.SaveOrUpdate<T>
が一般的な方法である)
あなたのメソッドシグネチャはジェネリック型パラメータ –
を受け入れませんジェネリックを使用している場合は、ある時点で特定の 'T'を導入する必要があります。あなたが 'T 'にも逆直列化できない理由は何ですか? –
エンティティがすべて基底型から継承している場合は、 'Reflection'を使うか、基本型を使用します。 – Rahul