Lewis
Lewis

Reputation: 23

Subsonic Delete multiple records

I have a table which has a two fields, userid and degreeid. A user can have multiple degreeds in this table. When a user select their degree I want to delete any degree id already in the database but un-selected by user. How should do it? I try to use something like this with no luck.

repo.DeleteMany(x=>x.MeetingAttendeeUserID==userID && x.EducationDegreeID userDegreeList)

Thanks, Lewis

Upvotes: 0

Views: 1134

Answers (3)

Rana blogs
Rana blogs

Reputation: 42

I would recommend if you dont know Lamda expression. Create your own stored procedure and call use it.

This will not restrict you using lamda expression if you don't have time to learn it.

Ultimately you wanted to done your job.

Upvotes: 0

fifolo
fifolo

Reputation: 1

I have tried

SubSonicRepository<ReportDatum> repo = new SubSonicRepository<ReportDatum>(db);
repo.DeleteMany(x => x.ReportID == Convert.ToInt32(reportID));

and it does nothing, not even an error.

Addendum for someone that comes across this: don't convert in the delete call, convert your variables beforehand.

int deleteKey = Convert.ToInt32(reportID)
SubSonicRepository<ReportDatum> repo = new SubSonicRepository<ReportDatum>(db);
repo.DeleteMany(x => x.ReportID == deleteKey);

and it fired fine.

Upvotes: 0

Stephen
Stephen

Reputation: 3621

Could you do something like this?

repo.DeleteMany(x =>
    x.MeetingAttendeeUserId == userID &&
    x.EducationDegreeID != selectedDegreeId
);

Edit: Or this.

repo.DeleteMany(x =>
    x.MeetingAttendeeUserId == userID &&
    userDegreeList.Contains(x.EducationDegreeID))
);

Upvotes: 1

Related Questions