Есть такой Метод
List<T> GetAll<T>() where T : IModel
И набор классов реализующих интерфейс IModel
Вот использование такого метода:
var users = GetAll<User>();
var custommers = GetAll<Custommer>();
Как мне в методе GetAll проверить какому именно классу принадлежит T? Я пробовал так, но компилятор ругается
List<T> GetAll<T>() where T : IModel
{
if(T.GetType() == User)
//some Code
}
С# язык с сильной типизацией и имеет набор методов и операторов, позволяющих получить тип Сущности. Есть метод object.GetType который возвращает тип существующего объекта.
var user = new User();
user.GetType(); // вернёт объект типа type который описывает тип User.
А так же существует оператор typeof
который работает на уровне классов:
var user = new User();
typeof(user/*objectName*/); // ERROR
typeof(User/*className*/);// всё ок
Решение моей задачи:
if (typeof(T) == typeof(Tarif))
//some code
else
//other code
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Есть дамп базы SQlite, мне нужно получить скрипт для создания такой же базы данных с полями и тд, для MySqlДамп я сделал, заменил в нем AUTOINCREMENT на AUTO_INCREMENT
Не знаю какую конструкцию mysql использоватьУ меня есть четыре таблицы:
Перенесли сайт на новый VDS серверПытаемся воспользоваться поиском, переходит на страницу поиска и пишет DB query error