如何解决使用抽象工厂
我正在处理一些需要跟踪特定动物最终产品的项目。 背景还有很多,比如喂食、疫苗等...... 在那个保持代码干净、易于理解和维护的项目中,我想到了使用抽象工厂作为解决方案。 我已经准备好了一些东西,但我想听听你们更有经验的人的意见,如果我做得好不好。 这是我的代码:
public interface IAnimal
{
void CreateAnimal(string code);
Guid GetAnimalIdByCode(string code);
}
public interface IAnimalFactory
{
IAnimal CreateAnimal();
}
public class ICowFactory : IAnimalFactory
{
public IAnimal CreateAnimal()
{
return new Cow();
}
}
public class CowFactory : IAnimalFactory
{
public IAnimal CreateAnimal()
{
return new Cow();
}
}
public class Cow : IAnimal
{
public Guid Id { get; set; }
public string Code { get; set; }
public void CreateAnimal(string code)
{
Id = Guid.NewGuid();
Code = code;
//Should I here use DbContext for adding in DB ?
}
public Guid GetAnimalIdByCode(string code)
{
//Should I here use DbContext for searching ?
return Id;
}
}
这里 Cow 将用作 ApplicationDbContext 中的实体,从中生成迁移,可以吗? 谢谢和最好的问候。 保持健康。 丹尼尔
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。