Pa 10 n1 louis decroo jr.


Published on

Portfolio summarizing projects completed at SetFocus

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Pa 10 n1 louis decroo jr.

  1. 1. .NET Portfolio<br />Louis Decroo Jr.<br /><br />(724) 777-4665<br /> This portfolio demonstrates my skill as a .NET developer.<br />
  2. 2. Introduction<br />This portfolio will demonstrate my skills as a C# .NET developer by summarizing the projects that I’ve completed at SetFocus.<br />
  3. 3. Table of Contents<br /><ul><li>Framework Project
  4. 4. Library Project
  5. 5. Library Phase I (Windows UI)
  6. 6. Library Phase II (ADO.NET/ Stored Procs)
  7. 7. Library Phase III (ASP.NET UI)
  8. 8. Library Phase IV (WCF)
  9. 9. Final Project (LINQ to XML)</li></li></ul><li>.NET Framework Project<br /><ul><li>Introduction:</li></ul>In this project parts of the business tier for a retail company we built. This project demonstrates skills in C# development as well as an understanding of the .NET Framework.<br /><ul><li>Project Goals:
  10. 10. The goal was to create and test two assemblies.</li></li></ul><li>.NET Framework Project: .NET skills<br />Inheritance<br />Delegates<br />Events<br />Interfaces<br />Generic collections<br />Custom collections<br />Abstract classes<br />Custom enumerators<br />Serialization <br />Attributes<br />
  11. 11. Framework: AppTypes Classes<br />Shows all of the actual classes used in the AppTypes project which was created as part of the Framework project.<br />
  12. 12. Framework: Foundation Classes<br />Shows the actual classes that make up the Foundation project which was created as part of the Framework project.<br />
  13. 13. Library Project: Functionality<br />Display Member information for existing members (adult & juvenile)<br />Contact information<br />Items currently on loan to member<br />Expiration date of membership<br />Add new member (adult and juvenile)<br />Juvenile members <br />Must be under 18<br />Must have a valid adult member ID to become a member<br />Allow items to be checked in and out <br />Must get member info to check out an item<br />Expired members cannot check out items<br />Allow new items to be added to the library *<br />If ISBN already in library add copy<br />Otherwise create new item<br />Highlight overdue items *<br />Added in Phase III *<br />
  14. 14. Library Project: Business Rules<br />First and last name must no more than 15 characters in length and must start with a capital letter.<br />Street and City must be no more than 15 characters in length.<br />Zip must be in format ##### or #####-####.<br />Phone must be in format (###)###-####.<br />Birth date must be within 18 years of the date to be considered a juvenile.<br />All juveniles must have a sponsoring adult member .<br />Each member can have no more than 4 items on loan at a time.<br />If the item to be checked out is already on loan it must first be checked in.<br />Check in/out must be confirmed.<br />
  15. 15. Library Project: Phase I<br /><ul><li>Introduction:
  16. 16. In this project a windows based user interface was created for a library. The database and all backend code was provided.
  17. 17. Project Goals:
  18. 18. The goal is to create a Windows user interface to the provided library.</li></li></ul><li>Library Phase I: .NET Skills<br /><ul><li>Input validation/error providers
  19. 19. Data binding a gridview control
  20. 20. Regular expressions
  21. 21. UI design
  22. 22. n-tier architecture</li></li></ul><li>Phase 1: Get Member<br />Shows get member page when a valid member ID with an item on loan is entered.<br />
  23. 23. Phase 1: Check Item In/Out<br />By entering an item that is checked out and pressing the check in button the following screen appears allowing the librarian the ability to confirm or cancel the check in.<br />Checkout functionality is only available to valid members who have less than 4 items on loan. The above screen shows the result of a checkout requested on an item that is already checked out.<br />
  24. 24. Phase 1: Add Member<br />Shows the form to add an adult member with invalid data to show some of the validation controls in action.<br />Shows the form to add a juvenile member. Invalid data is enter to show validation handling and the birth date is selected to show the datetimepicker control in action.<br />
  25. 25. Library Project: Phase II<br /><ul><li>Introduction:
  26. 26. This project creates a data access tier using ADO.NET code and any stored procedures necessary to access and update the SQL Server database.
  27. 27. Project Goals:
  28. 28. To create the data access layer for the library. </li></li></ul><li>Library Phase II: .NET Skills<br />SQL Server<br />ADO.NET<br />Linq<br />Stored Procedures<br />Error handling<br />Unit testing (stored procs)<br />
  29. 29. Phase II: N-tier Architecture<br />Shows the n-tier architecture of the library project. The front-end calls the business layer which calls to the data access layer through the data access interface. Note that all communication with the database is done through the data access layer.<br />
  30. 30. Phase II: XSD and DBML Files<br />LINQ to SQL was used to get information on all items on loan that are past due.<br />ADO.NET is used to create an ItemsDataSet to load data into the items on loan grid view of the Get Member page <br />
  31. 31. Phase II: Stored Procedures <br />Shows part of the stored proc used to check an item out of the library. Comments explain what each piece of code does.<br />
  32. 32. Phase II: ADO.NET Code<br />Shows ADO.NET code for adding an adult member to the library.<br />
  33. 33. Library Phase III<br /><ul><li>Introduction:
  34. 34. In this phase of the library project an ASP.NET web front end was created to make the library available online.
  35. 35. Project Goals:
  36. 36. The goal of this project is create a web front end in ASP.NET that works efficiently with the data access layer created in phase II.</li></li></ul><li>Library Phase III: .NET Skills<br />ASP.NET controls<br />Master Pages/Content Pages<br />AJAX Controls<br />Cascading Style Sheets (CSS)<br />Security (ASP.NET Configuration tool)<br />
  37. 37. Library Phase III: Promote Juvenile<br />Shows the applications behavior when a juvenile is promoted to an adult.<br />Shows the stored procedure that runs when a juvenile is promoted to an adult.<br />
  38. 38. Phase III: AJAX Controls<br />Shows the markup code necessary to add AJAX controls to a page. Note that the script manager is required on all pages that contain AJAX controls.<br />Shows the AJAX update progress while the check in is occurring on the AJAX update panel.<br />
  39. 39. Phase III: ASP.NET Validation Controls<br />Shows how validation is handled on the web user interface when proper information is not provided for adding an adult. Similar validation techniques were used on all pages in the application.<br />Shows the markup code for the ASP.NET validator controls.<br />
  40. 40. Library Phase IV<br /><ul><li>Introduction:
  41. 41. In this phase of the library project the ASP.NET front end will be modified to use a WCF web service.
  42. 42. Project Goals:
  43. 43. The goal of this project is create and host a WCF service. The ASP.NET front end of the library should be able to use the service to make calls to the business layer.</li></li></ul><li>Phase IV: Service Contract<br />Shows part of the service contract used to create the library service.<br />
  44. 44. Phase IV: Data Contract<br />Shows the Library fault class used to pass errors from the service to the front end.<br />
  45. 45. Phase IV: Security<br />[PrincipalPermission(SecurityAction.Demand, Role="LibraryPartner")]<br />- The above principle permissions attribute was put on all methods of the service making them only accessible to members of the LibraryPartner role.<br />
  46. 46. Final Project: XML Editor<br /><ul><li>Introduction:
  47. 47. This project was a team project in which the team worked to create a XML contract editor application for SetFocus that would eliminate the need for a Developer to make the changes every time a session needed to be added or a contract updated.
  48. 48. Project Goals:
  49. 49. The goal of the application was to provide a UI that would make the changes to the SetFocus files as needed using an n-tier architecture design and LINQ to XML to interact with the xml files.</li></li></ul><li>Final Project: Add Session Page<br />Add session page shown allows a session to be added to the sessionConfig.xml file. The code shows the LINQ to XML code used to add the session to the file.<br />
  50. 50. Final Project: Update Session Page<br />Update session page allows the starting and ending dates of the session to be changed. It also allows sessions to be removed if they have been cancelled. The code shows the LINQ to XML code for removing a session. <br />
  51. 51. Final Project: Edit Contract Page<br />The edit contract page allows any xml file to be edited directly on the page. Variables can be added at desired locations and changes can be saved/undone. The code shows the data access method used to update changes to the contract.<br />
  52. 52. What is SetFocus?<br />The SetFocus .NET Master’s Program is an intensive, hands–on, project oriented program allowing knowledge and valuable experience putting the .NET skill set to use in a simulated work environment.<br />  <br />I received over 500 hours of in-depths hands on experience focused on .NET Development. <br />SetFocus projects are real world projects that are distributed just as I would receive in a position. I received project specifications and was expected to identify best courses of action with deadlines set for completion.<br />