为了账号安全,请及时绑定邮箱和手机立即绑定

多个查找表的 MVC 核心存储库模式

多个查找表的 MVC 核心存储库模式

C#
万千封印 2021-06-22 17:12:21
我们有带有多个带有外键的查找表的客户事务表。当 CustomerService 创建客户订单交易时,我们希望使用这些查找表创建下拉菜单。如果一个人稍后查看交易,他们会看到 4 个表连接在一起。我会创造,(a) 4 个接口与 4 个存储库,(b) 或 2 个接口(1 个用于客户交易,1 个用于查找表),1 个用于客户交易的存储库和 3 个用于查找表接口的存储库?我们想将 Lookup table Repository 中继到下面的 SelectList。每个选择列表都在选择某些列。想要高效的代码。楷模:public class CustomerTransaction{    public int CustomerTransactionId{ get; set; },    public int ProductTypeId {get; set; }, //joins to ProductTypeTable    public int StatusKey {get; set; },  //joins to StatusTypeTable    public int CustomerTypeId {get; set; } //joins to CustomerTypeTable    public string DateOfPurchase{ get; set; },    public string PurchaseAmount { get; set; },}public class ProductType{    public int ProductTypeId{ get; set; }    public int Size { get; set; }    public int Weight { get; set; },    public string ProductName { get; set; },    public string ProductDescription { get; set; },}public class StatusType{    public int StatusKey{ get; set; }    public string Description{ get; set; },    public string Symbol { get; set; },}public class CustomerType{    public int KeyNumber{ get; set; },    public int Height{ get; set; }    public string HairColor{ get; set; },    public string NameOfPerson{ get; set; },    public string ResearchNotes{ get; set; },}下拉列表中的必填字段ViewData["ProductTypeId"] = new SelectList(_context.ProductType, "ProductName", "ProductDescription");ViewData["KeyNumber"] = new SelectList(_context.CustomerType , "NameofPerson", "Description");ViewData["StatusKey"] = new SelectList(_context.StatusType, "Symbol", "ResearchNotes");
查看完整描述

1 回答

?
千巷猫影

TA贡献1829条经验 获得超7个赞

您可以创建一个数据传输对象 (DTO) 来提供前端所需的内容。


public class EditTransaction {

    CustomerTransaction customerTransaction { get; set; }

    SelectList productTypes { get; set; }

    SelectList statusType { get; set; }

    SelectList customerTypes { get; set; }

}

包括一个类/方法/控制器/任何访问你的 DAL 存储库并组装 DTO 的东西。您的客户端代码获取 DTO。存储库和 UI 中没有什么“特别的”。


查看完整回答
反对 回复 2021-06-27
  • 1 回答
  • 0 关注
  • 121 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信