Skip to content

C# Many-to-Many Database Exercise in Adding and Sharing Resource Links

Notifications You must be signed in to change notification settings

TSiu88/ResourceLinks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 

Repository files navigation

Share Resource Links, 03.24.2020

By Tiffany Siu and Andriy Veremyeyev

Project Status: Inactive – The project has reached a stable, usable state but is no longer being actively developed; support/maintenance will be provided as time allows. LastCommit Languages MIT license


Table of Contents

  1. Description
  2. Setup/Installation Requirements
  3. Notable Features
  4. Specifications
  5. User Stories
  6. Screenshots
  7. Known Bugs
  8. Support and Contact Details
  9. License

Description

This application allows someone to be able to add and share resources that are important for the current situation of the Coronavirus Outbreak or any other situation of sharing a large amount of resource links between users. This application will consolidate resource links to be viewable in one place and allows adding categories or tags to the links. Links are visible for everyone but can only be added, edited, or deleted with a login.

3/25/20 Work from Home Summary

  • Resource Links
    • Fix functionality which was not working properly
    • Add messages for duplicate categories/tags or prevent ability to add duplicates
    • Add authorization to edit but ability to view without login
  • Struggles:
    • Showing error message for duplicate on same view without creating a new view
    • Prevent editing an existing category/tag to be a duplicate of another existing category/tag

3/24/20 Work from Home Summary

  • University Registrar
    • Add password authorization
  • Resource Links
    • Design project to be applicable for recent events
    • Able to apply project to any other resource link sharing
  • Career Services Presentation on CVs/Cover Letters/Resumes
  • Struggles:
    • Many-to-many relationships creating multiple relationship with checkboxes
    • Checkboxes being enabled and interactable with HTML helpers and passing it into the controller

Setup/Installation Requirements

This program requires .NET Core SDK to run. Here is a free tutorial for installing .NET on Mac or Windows 10 from the official website.

This program also makes use of SQL databases. We recommend using MySQL Workbench to build your databases. Here is a free tutorial for installing MySQL WorkBench and MySQL Community Server on Mac (using links Mac1 and Mac2) or Windows 10.

Requirements to Run

  • .NET Core
  • ASP.NET Core MVC
  • MySQL Workbench
  • MySQL Community Server
  • Entity Framework
  • Command Prompt
  • Web Browser

Instructions

This application may be viewed by:

  1. Download and install .NET Core from the official website
  2. Download and install MySQL Workbench and Community Server for Mac or Windows by following the instructions here.
  3. Click clone the repository from my GitHub page to copy the repository link
  4. Use a command line interface to type git clone (repository-link-here) to copy the project into the current folder and then move into the repository's directory that was just created with cd (project-name-here)
  5. Start up a local server by opening MySQL Workbench and adding a MySQL Connections using the default IP address and Port (IP 127.0.0.1, Port 3306), username (root), and password from setup.
  6. Run dotnet restore and dotnet build in command line interface of the repository's main project directory
  7. Run dotnet run to start up the program in the command line interface
  8. Type the URL listed under "Now listening on:" into a web browser to run

Other Technologies Used

  • C#
  • HTML
  • CSS
  • MSTest
  • Razor
  • Markdown

Notable Features

This application only allows editing for users that have registered and logged in, but is visible to everyone else. Checks for duplications of categories and tags are done and messages are shown if there is a duplicate.

Specifications

Click to expand to view specifications
Specification Input Output
The application should have categories and tags that can be added to a link Open link to categories or tags Show list of categories or tags
Categories and tags can be added, edited or deleted if logged in On category/tag index Buttons to add, edit, or delete
New categories/tags cannot be added if it is a duplicate that already exists Add category/link Duplicate categories/tags not allowed
Links can be added with a category and tag Add a link Link visible in index of links
Additional categories or tags can be added to a link Add category/link New category/link visible in lnk details
Links can have categories/tags deleted Delete category/tag Category/tag removed from link
Links can have details edited Edit link details New details shown
Ability to add, edit, or delete not visible if not logged in User not logged in No buttons/links to add, edit, or delete visible

User Stories

  • As a registered user, I want to be able to add resource links to the application so that I can share my resources with others in an organized way.
  • As a registered user, I want to be able to freely add, edit, and delete all categories, tags, and details associated with a link so that I can be organized and flexible in what is shown.
  • As the application owner, I want only registered users to be able to edit the information so that information on the application is only changable by authorized people.
  • As a viewer, I want to be able to see resource links and the categories or tags associated with them so that I can be selective or search for links I am interested in.

Screenshots

Here is a snippet of what the homepage looks like:

Snippet of homepage

Here is a preview of what the links page looks like if logged in:

Snippet of logged in links page

Here is a preview of what the link details looks like if NOT logged in:

Snippet of logged out links page

Here is a preview of what the link details looks like if logged in:

Snippet of logged in links page

Known Bugs

There are currently no known bugs in this program

Support and contact details

If there are any question or concerns please contact us at our emails: Tiffany Siu and Andriy Veremyeyev. Thank you.

License

This software is licensed under the MIT license

Photo Credit: Photo by Iñaki del Olmo on Unsplash

Copyright (c) 2020 Tiffany Siu, Andriy Veremyeyev

About

C# Many-to-Many Database Exercise in Adding and Sharing Resource Links

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published