我是工厂模式的新手,我想在我的一个项目中使用工厂模式,下面是我为我的项目设计的架构。
我的解决方案有以下项目:
现在所有上述项目都有一个名为Users的公共类。
我在Entities Project中定义了属性,这些属性与IUser接口一起继承到Core项目,该接口具有方法声明。
这是我的Entities.User类的外观:
public class User
{
public int UserId {get; set;}
public string Username {get; set;}
public string Displayname {get; set;}
}
My Core.Users如下所示
public class Users : Entities.Users, IUsers
{
public void Add()
{
//calling Data.Users function here.
}
}
My Interface.Users如下所示
public interface IUsers
{
void Add();
}
我的ServiceFactory.Users如下所示
public class FactoryService
{
public static IUsers CreateUserInstance()
{
return new Core.Users();
}
}
现在在我的主项目中我正在使用它,如下面
IUsers oUser = FactoryService.CreateUserInstance();
现在我的问题是,我无法使用上面的oUser
对象访问主项目中的任何实体。