15 users have completed this project
Introduction
Personal finances apps are very useful for learning web development. They’ll force you to handle many data types: Dates, strings, decimals, integers, to mention the most basic. They’ll also challenge your front-end skills with heavy user interaction through forms and data-tables.
In terms of database design, they give you the chance to create interesting structures, such as one-to-many and many-to-many relationships between tables, which in turn expands pushes the boundaries of our knowledge of SQL and Entity Framework. So let’s build a budget app to expand on our MVC knowledge with a slightly more complex piece of software.
Requirements
-
This is an application where you should record personal finance transactions.
-
You should have two linked tables: Transaction and Category.
-
You need to use Entity Framework, raw SQL isn't allowed.
-
Each transaction MUST have a category and if you delete a category all it's transactions should be deleted.
-
You should use SQL Server, not SQLite.
-
You should have a search functionality where I can search transactions by name
-
You should have a filter functionality, so I can show transactions per category and per date.
-
You need to use modals to insert, delete and update transactions and categories. These operations shouldn't be done in a different page.
Resources
Here are a few resources that might be helpful.
Tips
-
Don't forget validation! Your form shouldn't allow the user to input negatives or strings as a transaction value. Data annotations on your model are one way to go.
-
Have separate controllers for Categories and Transactions.