Я хочу сохранить динамический объект в базу данных. Имя таблицы базы данных будет задано динамически. Поэтому у меня нет класса.Настройки Имя типа динамического объекта 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);
}
Это создает динамический объект. И я добавляю это в универсальный репозиторий framework.
using (var repository = new EFRepository(new Context()))
{
repository.SaveOrUpdate<????>(CreateModel())
}
Я не могу установить имя типа. Я могу установить здесь случайное имя.
(repository.SaveOrUpdate<T>
является общим методом)
ваши сигнатуры методов не принимают параметр общего типа –
Если вы используете дженерики, в какой-то момент вам нужно будет ввести конкретный 'T'. Любая причина, по которой вы не можете десериализоваться в «T»? –
Только у вас есть использование 'Reflection' или использование базового типа, если все объекты наследуются от базового типа. – Rahul