Мой вопрос, вероятно, не очень хорошо сформулирован, и, вероятно, это обман, но я пойду
class person {
protected static string request = "select * from person where gender in ('male','female')";
public string sharedmethod()
{
return "the request is" + request;
}
}
class man:person
{
override protected static string request = "select person.*,man.* from person,men where mytype in ('male') ";
DateTime dateOfFirstCar;
}
class woman:person
{
override protected static string request = "select person.*,woman.* from person,women where mytype in ('female') ";
DateTime dateOfFirstITBAG;
}
class Program
{
static void Main(string[] args)
{
if (new person().sharedmethod() == new man().sharedmethod())
Console.Write("too bad query is the same in base and dervide class");
}
}
Мужчина - это человек
Женщина - это человек
Человек, мужчина, женщина существуютв моей базе данных, но нужны разные запросы
Я не хочу дублировать эти запросы, поэтому я подумал, что было бы неплохо хранить их в статическом свойстве в каждом классе.
Я получил некоторые вещи низкого уровня (здесь не фигурировали), которые лежат в базовом классе (потому что я не хочу дублировать), и я хотел, чтобы унаследованные классы вызывали метод базового класса с контекстом наследуемых классов
Я хочу, чтобы мужчина. [Унаследованный] somemethod () выполнил person.somemethod (), но с переменными, исходящими от man
спасибо