# 𝗘𝗙 𝗖𝗼𝗿𝗲 𝗖𝗵𝗮𝗹𝗹𝗲𝗻𝗴𝗲𝘀 𝘄𝗶𝘁𝗵 𝗧𝗿𝗶𝗴𝗴𝗲𝗿𝘀 𝗶𝗻 𝗘𝘅𝗽𝗲𝗻𝘀𝗲𝘀 𝗧𝗮𝗯𝗹𝗲 & 𝗛𝗼𝘄 𝗜 𝗙𝗶𝘅𝗲𝗱 𝗧𝗵𝗲𝗺 🚀

Working with 𝗘𝗙 𝗖𝗼𝗿𝗲 on an 𝗘𝘅𝗽𝗲𝗻𝘀𝗲𝘀 𝘁𝗮𝗯𝗹𝗲 that had 𝗜𝗡𝗦𝗘𝗥𝗧, 𝗨𝗣𝗗𝗔𝗧𝗘, 𝗮𝗻𝗱 𝗗𝗘𝗟𝗘𝗧𝗘 𝘁𝗿𝗶𝗴𝗴𝗲𝗿𝘀 came with unexpected challenges. Here’s what I faced and how I solved them.

1️⃣ 𝗜𝗻𝘀𝗲𝗿𝘁 𝗡𝗼𝘁 𝗪𝗼𝗿𝗸𝗶𝗻𝗴 (𝗡𝗼 𝗘𝗿𝗿𝗼𝗿𝘀, 𝗡𝗼 𝗥𝗲𝗰𝗼𝗿𝗱𝘀)

* 𝗜𝘀𝘀𝘂𝗲: `DbSet.Add(entity)` and `SaveChangesAsync()` executed successfully, but records 𝘄𝗲𝗿𝗲𝗻’𝘁 𝗶𝗻𝘀𝗲𝗿𝘁𝗲𝗱 into the database.
    
* 𝗙𝗶𝘅: Used `ExecuteSqlRaw()` instead of EF Core’s `Add()` method.
    

2️⃣ 𝗨𝗽𝗱𝗮𝘁𝗲 𝗙𝗮𝗶𝗹𝗶𝗻𝗴 𝘄𝗶𝘁𝗵 𝗖𝗼𝗻𝗻𝗲𝗰𝘁𝗶𝗼𝗻 𝗖𝗹𝗼𝘀𝗲𝗱 𝗘𝗿𝗿𝗼𝗿

* 𝗜𝘀𝘀𝘂𝗲: `ExecuteSqlRaw()` for updating records resulted in "𝗜𝗻𝘃𝗮𝗹𝗶𝗱 𝗼𝗽𝗲𝗿𝗮𝘁𝗶𝗼𝗻. 𝗧𝗵𝗲 𝗰𝗼𝗻𝗻𝗲𝗰𝘁𝗶𝗼𝗻 𝗶𝘀 𝗰𝗹𝗼𝘀𝗲𝗱."
    
* 𝗙𝗶𝘅: Opened the database connection manually before executing the query.
    

3️⃣ 𝗗𝗯𝗖𝗼𝗻𝘁𝗲𝘅𝘁 𝗗𝗶𝘀𝗽𝗼𝘀𝗲𝗱 𝗕𝗲𝗳𝗼𝗿𝗲 𝗦𝗮𝘃𝗲𝗖𝗵𝗮𝗻𝗴𝗲𝘀𝗔𝘀𝘆𝗻𝗰()

* 𝗜𝘀𝘀𝘂𝗲: `_context` was getting disposed before `SaveChangesAsync()` when performing updates.
    
* 𝗙𝗶𝘅: Ensured `DbContext` was properly injected and used 𝘁𝗿𝗮𝗻𝘀𝗮𝗰𝘁𝗶𝗼𝗻𝘀 where necessary.
    

4️⃣ 𝗧𝗿𝗶𝗴𝗴𝗲𝗿𝘀 𝗕𝗹𝗼𝗰𝗸𝗶𝗻𝗴 𝗘𝗙 𝗖𝗼𝗿𝗲’𝘀 𝗗𝗲𝗳𝗮𝘂𝗹𝘁 𝗕𝗲𝗵𝗮𝘃𝗶𝗼𝗿

* 𝗜𝘀𝘀𝘂𝗲: Triggers caused EF Core to 𝗲𝘅𝗽𝗲𝗰𝘁 𝗼𝘂𝘁𝗽𝘂𝘁 𝗳𝗿𝗼𝗺 𝗼𝗽𝗲𝗿𝗮𝘁𝗶𝗼𝗻𝘀, leading to exceptions.
    
* 𝗙𝗶𝘅: Used `ExecuteSqlRaw()` for `INSERT`, `UPDATE`, and `DELETE` operations instead of EF Core methods.
    

✅ 𝗟𝗲𝘀𝘀𝗼𝗻𝘀 𝗟𝗲𝗮𝗿𝗻𝗲𝗱

* 𝗘𝗙 𝗖𝗼𝗿𝗲'𝘀 𝗱𝗲𝗳𝗮𝘂𝗹𝘁 𝗯𝗲𝗵𝗮𝘃𝗶𝗼𝗿 𝘀𝘁𝗿𝘂𝗴𝗴𝗹𝗲𝘀 𝘄𝗶𝘁𝗵 𝘁𝗮𝗯𝗹𝗲𝘀 𝗵𝗮𝘃𝗶𝗻𝗴 𝗱𝗮𝘁𝗮𝗯𝗮𝘀𝗲 𝘁𝗿𝗶𝗴𝗴𝗲𝗿𝘀.
    
* 𝗨𝘀𝗶𝗻𝗴 `𝗘𝘅𝗲𝗰𝘂𝘁𝗲𝗦𝗾𝗹𝗥𝗮𝘄()` 𝗯𝘆𝗽𝗮𝘀𝘀𝗲𝘀 𝗘𝗙 𝗖𝗼𝗿𝗲'𝘀 𝗹𝗶𝗺𝗶𝘁𝗮𝘁𝗶𝗼𝗻𝘀 𝘄𝗵𝗲𝗻 𝗱𝗲𝗮𝗹𝗶𝗻𝗴 𝘄𝗶𝘁𝗵 𝘁𝗿𝗶𝗴𝗴𝗲𝗿𝘀.
    
* 𝗠𝗮𝗻𝘂𝗮𝗹𝗹𝘆 𝗺𝗮𝗻𝗮𝗴𝗶𝗻𝗴 𝘁𝗿𝗮𝗻𝘀𝗮𝗰𝘁𝗶𝗼𝗻𝘀 𝗮𝗻𝗱 𝗰𝗼𝗻𝗻𝗲𝗰𝘁𝗶𝗼𝗻𝘀 𝗶𝘀 𝗻𝗲𝗰𝗲𝘀𝘀𝗮𝗿𝘆 𝗶𝗻 𝘀𝗼𝗺𝗲 𝗰𝗮𝘀𝗲𝘀.
    

❓ 𝗛𝗼𝘄 𝗗𝗼 𝗬𝗼𝘂 𝗛𝗮𝗻𝗱𝗹𝗲 𝗘𝗙 𝗖𝗼𝗿𝗲 𝘄𝗶𝘁𝗵 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲 𝗧𝗿𝗶𝗴𝗴𝗲𝗿𝘀? 𝗛𝗮𝘃𝗲 𝘆𝗼𝘂 𝗳𝗮𝗰𝗲𝗱 𝘀𝗶𝗺𝗶𝗹𝗮𝗿 𝗶𝘀𝘀𝘂𝗲𝘀 𝘄𝗶𝘁𝗵 𝗘𝗙 𝗖𝗼𝗿𝗲 𝗮𝗻𝗱 𝗱𝗮𝘁𝗮𝗯𝗮𝘀𝗲 𝘁𝗿𝗶𝗴𝗴𝗲𝗿𝘀? 𝗛𝗼𝘄 𝗱𝗶𝗱 𝘆𝗼𝘂 𝘀𝗼𝗹𝘃𝗲 𝘁𝗵𝗲𝗺? 𝗟𝗲𝘁’𝘀 𝗱𝗶𝘀𝗰𝘂𝘀𝘀! 👇
