Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Sample Applications #65

Open
alecwhittington opened this issue Oct 5, 2012 · 1 comment
Open

New Sample Applications #65

alecwhittington opened this issue Oct 5, 2012 · 1 comment

Comments

@alecwhittington
Copy link
Member

Add new Samples that are all based on an Account Management system.

Basic Requirements

  • Stores a list of Contacts
  • Add Contact
  • Edit Contact
  • Delete Contact
  • Send Contact Communication
  • Contact consists of
    • First Name
    • Last Name
    • Display Name
    • Address
      • Street
      • City
      • State
      • Postal Code
      • Country
    • Email Address
    • Home Phone
    • Mobile Phone
    • Fax Number
    • Time Zone
    • Date Last Contacted
    • Preferred Contact Method

Simple Account Manager

Will be the simplest sample. Expect to see repository calls in the controller and round trips from the client to the server for updates. No Ajax at all.

  • Direct Repository Calls
  • No Commands
  • No ViewModels
  • Entity Model binding via SharpModelBinder

A Better Account Manager

Will be the standard sample. Expect to see Form and View Models, use of Tasks.

  • No direct calls to Repos
  • All Data is gotten via tasks
  • No Commands
  • No Queries
  • Use Form Models to come from Client to Server
  • Use View Models to go from Server to Client
  • No use of SharpModelBinder

A CQRS Account Manager

Show the use of commands and queries to perform the tasks. No Ajax, not yet.

  • IViewModelQueries will be used for read operations
  • Controllers now will issue Commands for write operations
  • No direct calls to repos in Controllers
  • No use of Tasks
  • No use of SharpModelBinder
  • Use Form Models to come from Client to Server
  • Use View Models to go from Server to Client

A client-side Account Manager

Use AngularJs to show how one could implement a client-side based Account Manager that will use the Web Api as a backend.

  • Backend only delivers JSON to front end via the Web Api
  • IViewModelQueries will be used for read operations
  • Controllers now will issue Commands for write operations
  • No direct calls to repos in Controllers
  • No use of Tasks
  • No use of SharpModelBinder
  • Use Form Models to come from Client to Server
  • Use JSON message to go from Server to Client
@seif seif modified the milestone: 3.0 Apr 26, 2015
@cd21h
Copy link

cd21h commented Jan 23, 2016

@sharparchitecture/members Guys, anyone want to contribute to this?

@cd21h cd21h removed the Backlog label Oct 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants