Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void DeleteFruit(Guid fruitId,Guid userId)
- {
- var fruit= db.Fruits.Where(r => (r.Id== fruitId).FirstorDefault();
- if (fruit != null)
- {
- var record = new MonitorDelete { ID = fruit.ID, UserID = userId};
- db.MonitorDeletes.Add(record);
- db.Fruits.Remove(fruit);
- db.SaveChanges();
- }
- }
- ALTER TRIGGER [dbo].[TR_Fruits_Audit] ON [dbo].[Fruits]
- AFTER INSERT, UPDATE, DELETE
- AS
- SET NOCOUNT ON
- BEGIN
- -- Determine if it is an update, insert or delete;
- DECLARE @Action as char(1);
- SET @Action =
- (CASE
- WHEN EXISTS(SELECT * FROM INSERTED) AND EXISTS(SELECT * FROM DELETED)
- THEN 'U'
- WHEN EXISTS(SELECT * FROM INSERTED)
- THEN 'I'
- WHEN EXISTS(SELECT * FROM DELETED)
- THEN 'D'
- ELSE NULL
- END)
- IF @Action is not null
- BEGIN
- DECLARE @Guid as uniqueidentifier;
- SET @Guid = NEWID();
- IF @Action = 'D'
- BEGIN
- SELECT @RecordChange = (SELECT count(*) FROM (SELECT a.UserID FROM MonitorDelete a JOIN deleted d on a.ID=d.ID)z);
- IF @RecordChange > 0
- BEGIN
- INSERT INTO AuditFruits (ID, ActivityUser, FruitID, FruitName)
- SELECT @Guid, ad.UserID, d.FruitID,d.FruitName FROM deleted d
- join MonitorDelete ad on d.ID=ad.ID
- END
- ELSE
- BEGIN
- INSERT INTO AuditFruits (ID, FruitID, FruitName)
- SELECT @Guid, d.FruitID,d.FruitName FROM deleted d
- END
- END
- END
Add Comment
Please, Sign In to add comment