Я бы не сказал, что это отличное решение ... но ... у вас может быть еще один уровень абстракции
например, допустим, у вас есть объект вроде:
public class Foo
{
public string Id { get; set; }
public string Property2 { get; set; }
public string Property3 { set; get; }
}
Вам не нужен столбец для идентификатора, поэтому вы создаете новый объект
public class Foo2
{
public string Property2 { get; set; }
public string Property3 { set; get; }
}
затем сопоставьте / конвертируйте Foo в Foo2, и все готово.
Другой возможный способ (не всегда возможно) - изменить модификатор доступа на внутренний
public class Foo
{
internal string Id { get; set; }
public string Property2 { get; set; }
public string Property3 { set; get; }
}
таким образом, у вас не будет сгенерированного столбца Id.