The fact that you are using Mobile Services changes everything. Sorry, I didn't note it when I read your post in first place.
The default data storage used by Mobile Services is SQL Server that allows multiple indexing for a specific table. In this case I suggest the following data schema:
- An "Event" table with an Id column representing the unique id of the event plus other fields to store info about the event (description etc.)
- A EventMembers table with an EventId field and a UserId field (both indexed)
Let's imagine we have an Event with Id 1 and the users with userid User1 and User2 are participating. You would have the following record in the table Event:
id: "1"
description: "event with id 1"
In the EventMembers table you would have two records:
eventid: "1"
userid: "User1"
eventid: "1"
userid: "User2"
Because both eventid and userid are indexed column, you can query the table to check what users are participating to an event and which events a specific user is participating.