Events Entities
Entities for fishing events (expos, swap meets, seminars, etc.) separate from tournaments.
FishingEvent
Purpose: Fishing-related events (expos, swap meets, get-togethers, seminars, etc.).
Key Fields:
Id(int): Unique identifierTitle: Event titleDescription: Event descriptionEventType: Expo, SwapMeet, Seminar, Workshop, etc.OrganizerUserId: User organizerOrganizerName: Organization name (if not user)OrganizerEmail,OrganizerPhone,OrganizerWebsite: Contact infoLocationName: Event locationAddress,City,State,ZipCode,Country: AddressLatitude,Longitude: CoordinatesStartDate,EndDate: Event datesStartTime,EndTime: Event timesIsAllDay: All-day event flagTimeZone: Time zoneIsPublic: Public event flagRequiresRegistration: Whether registration requiredMaxParticipants: Maximum participantsRegistrationFee: Registration feeIsActive: Whether event is active
Relationships:
- Many-to-one: User (organizer)
- One-to-many: FishingEventRegistration, FishingEventSeminar, FishingEventVendor, FishingEventSponsor
Usage Patterns:
// Create event
var fishingEvent = new FishingEvent
{{
Title = "Milwaukee Fishing Expo 2024",
EventType = EventType.Expo,
StartDate = eventDate,
EndDate = eventDate.AddDays(3),
LocationName = "Wisconsin Center",
City = "Milwaukee",
State = "WI",
IsPublic = true,
RequiresRegistration = true
}};
// Get upcoming events
var events = context.FishingEvents
.Where(fe => fe.StartDate >= DateTime.UtcNow && fe.IsActive)
.OrderBy(fe => fe.StartDate)
.ToList();
FishingEventRegistration
Purpose: User registrations for fishing events.
Key Fields:
Id(int): Unique identifierFishingEventId: Associated eventUserId: Registered userRegistrationDate: Registration dateStatus: Pending, Confirmed, CancelledPaymentStatus: Payment status if fee required
Relationships:
- Many-to-one: FishingEvent, User
FishingEventSeminar
Purpose: Seminars/workshops within events.
Key Fields:
Id(int): Unique identifierFishingEventId: Associated eventTitle: Seminar titleDescription: Seminar descriptionSpeakerName: Speaker nameStartTime,EndTime: Seminar timesRoom: Seminar room/locationMaxAttendees: Maximum attendees
Relationships:
- Many-to-one: FishingEvent
FishingEventVendor
Purpose: Vendors/exhibitors at events.
Key Fields:
Id(int): Unique identifierFishingEventId: Associated eventVendorName: Vendor nameBoothNumber: Booth numberDescription: Vendor descriptionWebsite: Vendor website
Relationships:
- Many-to-one: FishingEvent
FishingEventSponsor
Purpose: Event sponsors.
Key Fields:
Id(int): Unique identifierFishingEventId: Associated eventSponsorName: Sponsor nameSponsorLevel: Gold, Silver, BronzeLogoUrl: Sponsor logoWebsite: Sponsor website
Relationships:
- Many-to-one: FishingEvent
Related Documentation
- Club Events - Club-specific events
- Tournaments - Tournament system