Question: Write a Console App C# (.NET Framework) that: Makes use of an interface calledIEncryptablethat contains method signatures for Encrypt( ) and Decrypt( ) (save as
Write a Console App C# (.NET Framework) that:
Makes use of an interface calledIEncryptablethat contains method signatures forEncrypt( )andDecrypt( )(save asIEncryptable.cs)
Makes use of an interface calledISearchablethat contains a method signature forSearch( )(save asISearchable.cs)
Makes use of an abstract class calledMediawhich represents one single media object (save asMedia.cs)
Creates additional classes derived fromMedia:
Book(represents one book and has two string properties,AuthorandSummary)
Movie(represents one movie and has two string properties,DirectorandSummary)
Song(represents one song and has two string properties,AlbumandArtist)
The main class (Lab3A) should have the following features:
A method calledReadData( )that will read theData.txtfile and store up to 100 searchable media objects into an array
Examine the data file structure to see how the different media information has been formatted and stored
The data file will have theSummaryinformation for bothBooksandMoviesencrypted using a simple Rot13 algorithm (see Wikipedia)
Include exception handling for the file I/O
Prompts the user via a menu to display your media objects in a variety of ways:
List All Books- a neat list of all Book objects (noSummarydisplayed)
List All Movies- a neat list of all Movie objects (noSummarydisplayed)
List All Songs- a neat list of all Song objects
List All Media- a neat list of all derived Media objects (noSummarydisplayed)
Search All Media by Title- a neat list of all objects with the search key anywhere in theTitle(display decryptedSummarywhere available)
Exit Program
Continues to prompt until the user selects the exit option
Error checking for user input
TheMain( )method should be highly modularized
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
