Я использую LINQ to SQL, 3.5 Framework, и я хотел бы знать, что является лучшим способом для разработки классов.Возьмем очень простой пример User
таблицы.
Если у меня есть таблица пользователей с 3 различными ролями: Клиент, Администратор, Кассир.Я бы сказал, что мне нужно создать 3 класса для каждой роли.Например, customer.cs ...
Вопрос:
1) Поскольку в Linq .dbml уже автоматически сгенерирован пользователь из моей таблицы пользователей, все свойства уже предопределены, нужно ли мне создавать пользователя?.cs класс, который будет унаследован 3 от роли классов выше?Это потому, что я не могу добавить дубликаты свойств в файл User.cs, например, Public string Name {get;set;}
не удастся, потому что в .dbml уже есть вызов свойства Name.
2) Этот вопрос, я думаю, будет очень простым.... но я нахожу это полезным, если я могу знать правильный ответ.Как я должен оставить свою функциональность в правильном классе?e.g. PrintYearlyReport(), CheckStaffSalary(), ModifySale(), UpdateGovernmentTax()
.... все эти функции находятся в роли администратора.Это будет очень читабельно, если у нас будет admin.PrintYearlyReport(), admin.ModifySale()
... Однако, если мы будем хранить все функции администратора в файле Admin.cs, то этот файл будет очень очень огромным !!!Для ООП нам нужны такие классы, как, например, Sale.cs, Payment.cs, Invoice.cs.Если мы разделим все эти функции на разные классы, у нас больше не будет элегантного способа вызова admin.PrintYearlyReport () больше ..