У меня есть библиотека классов со всей моей логикой базы данных. Мой DAL/BLL.
У меня есть несколько веб-проектов, которые будут использовать одну и ту же базу данных и классы, поэтому я подумал, что было бы неплохо абстрагировать слой данных в своем собственном проекте.
Однако, когда дело доходит до добавления функциональности к классам для некоторых проектов, я хочу добавить методы к определенным классам.
Например, в моем слое данных есть объекты Product и SomeItem:
// Data Access Layer project
namespace DAL {
public class Product {
//implementation here
}
public class SomeItem {
//implementation here
}
}
В одном проекте я хочу добавить интерфейс, который используется разными элементами контента, поэтому у меня есть класс под названием:
// This is in Web Project
namespace DAL {
public partial class Product : ICustomBehaviour {
#region ICustomBehaviour Implementation
TheSharedMethod();
#endregion
}
}
Хорошо ли написать частичный класс в отдельном проекте (создание зависимости) с использованием того же пространства имен? Если это плохая идея, как я могу заставить эту функцию работать?
Кажется, он не хочет объединять их во время компиляции, поэтому я не уверен, что я делаю неправильно.