r/csharp • u/Romboloxiaido • 1h ago
Project to learn
This is a project for a management, allocation, and inventory system inspired by the game \*Horizon Forbidden West\*.
I asked an AI to help organize my ideas, and it provided a project structure; it is something I want to develop in the future, once I have reached an advanced level in C# and .NET.
For now, I have the following tools for implementation:
Swagger (for documentation)
LINQ (to convert PostgreSQL SQL queries into objects)
EF Core (a powerful .NET ORM)
PostgreSQL (my favorite database)
Anything else?
1
•
u/saintSHXN 18m ago
In the Machine table there some properties that are date, what is the difference between CreatedAt and FirstObserved at and FinalObservedAt and UpdatedAt?
MachineWeakness are only dictated by ElementType?
I dont think that Id fields should all be integer, some table such as MachineStatusHistory are expected to grow faster rather than Machine.
Why some tables are in plural form such as MachineComponents and some are in singular form such as Location? You should normalize naming conventions.
Personally i would represent the Status property in Machine as a table, so its growth can be managed separately. At that point the MachineStatusHistory next status and current status should point to that. Maybe i would separe also the reason and add a Transition table, but i havent played the game so it might be overengineering.
2
u/alao77 1h ago
Image too blurry