代码之家  ›  专栏  ›  技术社区  ›  Rod

同时添加/更新子记录和父记录

  •  1
  • Rod  · 技术社区  · 14 年前

    有人能告诉我最简单的方法,在创建/更新父记录和子记录的同时(如多个地址的客户),至少或没有代码尽可能?Web窗体和MVC中。

    1 回复  |  直到 14 年前
        1
  •  0
  •   IrishChieftain    14 年前

    基本思想是创建/更新父记录并返回新的ID(键)。然后使用该键创建相关的子记录。例如,假设您有一个事件表和一个相关的事件日期表:

     public static int CreateEvent(
          out int eventId,
          DateTime datePosted,
          string title,
          string venue,
          string street1,
          string city,
          string state,
          string zipCode)
          {
              ...
          }
    
    public static void AddEventDates(
           int eventDateID,
           int eventID, 
           DateTime startDate, 
           DateTime endDate)
           {
               ...
           }
    

    在这里维护数据完整性很重要;如果其中一个更新失败,那么两个更新都需要返回到原始状态。您可以自己实现它或使用事务:

    http://msdn.microsoft.com/en-us/library/z80z94hz%28VS.90%29.aspx

    推荐文章