General Actions:
Log-in
DevForce
Solutions
Products
Download
Purchase
Professional Services
Solutions
Custom Development
Our Clients
Free Consultation
Resources
Download
Documentation
Community Forum
Technical Support
Videos
Ward's Blog
Customers
Our Customers
Our Partners
Success Stories
Company
About Us
Privacy
Contact Us
Page Actions:
More actions
▼
:
Print preview
Next »
The Happy Hour Tutorial
Up
Cocktail overview
« Previous
Additional resources
DevForce 2010 Resource Center
»
Cocktail overview
»
Reference apps and tutorials
Reference apps and tutorials
Last modified on August 15, 2012 17:22
Additional resources
« Previous
Next »
The Happy Hour Tutorial
Tags:
Cocktail
Created by DevForce on January 23, 2012 14:41
Search
2010 Documentation Home
Navigation
DevForce overview
Architecture
Entities
Entity Data Model
EDM Designer
Entity Data Model XML (EDMX)
Map to multiple database vendors using the same EDM
Code generation
Entity Customization
Metadata class
Helper class
Data tier
Application server tier
EntityServer
Entity Framework for database access
Interceptors and plug-ins
Back end services
Multiple EntityServers
Client tier
Client development
WCF
DevForce, Enterprise Applications, and the Entity Framework
DevForce or RIA Services?
Cost
Productivity
Multiple client technologies
Experience
Tour of DevForce Silverlight
Tour of DevForce Silverlight - Part 1
Tour of DevForce Silverlight - Part 2
Tour of DevForce Silverlight - Part 3
Tour of DevForce Silverlight - Part 4
Tour of DevForce Silverlight - Part 5
Tour of DevForce Silverlight - Unit Testing
Silverlight Quickie
Tour of DevForce WPF
Tour of DevForce WPF - Part 1
Tour of DevForce WPF - Part 2
Tour of DevForce WPF - Part 3
WPF Quickie
DevForce development
Start
What DevForce installs
Installation Troubleshooting
Create new solutions with DevForce templates
Choose a template
EntityManager
EntityManager by task
Create an EntityManager
The EntityManager is not thread-safe
Create an offline EntityManager
Reconnect an offline EntityManager
Target different databases dynamically
Multiple models per manager
Multiple EntityManagers
The entity cache
Program asynchronously
Batch asynchronous tasks with coroutines
Serial async challenge
Serial coroutine flow
Parallel async coroutines
Asynchronous errors
Function lists and VB coroutines
Learn about related technologies
Code samples
Model
Create the entity data model
Start with the EDM Wizard
Refine in the EDM Designer
EDM Designer windows
EDM Designer canvas
EDM Model Browser
EDM Designer properties
Change member visibility
Set property default value
Combine related values in a ComplexType
Advanced modeling topics
Model First in the EDM Designer
DevForce EDM Designer extension
EDMX in Source Control
Review the connection string
Update Model from Database
Edit the EDMX as XML
Foreign Key Associations required
Replace unpredictable DateTime and Guid classes
Generate model code
Generated EntityManager
Generated entity classes
Restore Entity Framework code generation
Customizing the DevForce code generation template
Customize the model
Add a partial class file
Add a Metadata class
Add custom base class
Specify the null entity
Code First
Write entities Code First
Installing the Code First NuGet package
Add a custom EntityManager
Add a custom DbContext
Generate metadata
Set the database connection
EntityAspect in Code First
Custom entity base classes
DevForce entity interfaces
Generate the initial Code First model
Troubleshooting Code First
Advanced database connections
Using SQL Server Compact 4.0
Code First code snippets
Code First vs. Database First
Code sample: Code First Walk (WPF)
Code First: AOP (aspect-oriented programming)
Silverlight models
Property interceptors
Attribute interception
Define an interceptor to act against multiple types
Dynamic property interception and the PropertyInterceptorManager
EntityProperties and property interceptors
Interception method signatures
Interceptor chaining and ordering
Multiple attributes on a single interceptor action
Named vs. unnamed interceptor actions
Property interception mechanics
PropertyInterceptor attribute discovery
PropertyInterceptor keys
PropertyInterceptorArgs and IPropertyInterceptorArgs
The EntityPropertyNames class
Examine model metadata
XML serialization of entities
Separate the model project
Subordinate entities of a root entity
Code samples
Query
Query using LINQ
Return part of an entity
Include related entities
Include and filter related entities
Paging queries
Pass parameters to a query
Execute scalar query asynchronously
LINQ query examples
Joins
Projection operators
Aggregate operators
Set operators
Ordering & Grouping operators
Relationship navigation
Inheritence operators
Closures
Include operators
Paging operators
Restriction operators
More query tips
Query without using LINQ
Query by EntityKey
Entity SQL (ESQL) queries
Stored procedure queries
Query asynchronously
Control query execution
Control where the query executes
Merge query results into the entity cache
Invert a query
Match the semantics of cache queries to database queries
Transactional queries
Cache a query
Secure the query with attributes
Query lifecycle
Client-side life cycle
Server-side life cycle
Intercepting and modifying queries during execution
Query using property navigation
Relationships and navigation properties
Navigation properties and data retrieval
Adding and Removing Related Objects
Asynchronous navigation properties
Missing objects and the null entity
Build queries dynamically
Create a completely dynamic query
Create dynamic "Where" clauses
Combine predicates with PredicateBuilder
Create dynamic "OrderBy" clauses
Create dynamic "Select", "SelectMany" and "GroupBy" clauses
Add a named query
Add the default named query
Add specialized named query
Parameterized named query
Intercept a named query
IEnumerable named query
Query method naming conventions
Cache only queries
Requery
Useful query extension methods
Improve query performance
Code samples
Display
Code samples
Create, modify and delete
Create
Write a custom constructor
Set the EntityKey in the constructor
Create a factory method
Generate custom ids
Block entity creation with an internal constructor
Replace temporary foreign key ids with permanent ids
Use CreateEntity() sparingly
Modify
Delete
Get and set a property
Access entity internals
Check for changes
Change the EntityState
Listen for changes
Undo changes
Add, attach, and remove
Create a "live" filtered list of entities
Import entities
Inspect original values
Take a snapshot
Code samples
Validate
Validation concepts
Overview
Generate automatic validation attributes
Add custom validation attributes
Consider predefined verifiers
Create a custom verifier
Configure a verifier
Discover verifiers
Perform a validation
Intercept a validation
Display validation results
Validate on the server
Localize error messages
Code samples
Save
Perform a save
Perform a save asynchronously
Validate before a save
Handle save errors
Manage concurrency
Manage the save transaction
Control the save order
Save lifecycle
Client-side save lifecycle events
Server-side save lifecycle events
Handle cascaded deletes
Save a graph of entities
Code samples
Secure
Authenticate
The Login process
On the client
On the server
Customize the Login process
Use ASP.NET security
Security in the Business Application Template
Authorize
Additional steps
Intercept server exceptions
Code samples
Test, log, and debug
Test
Log
Use a custom logger
Real-time trace viewers
Debug
Understand logged info
Understand the EntityServerException
Understand and troubleshoot timeouts
Code samples
DevForce LINQPad driver
DevForce Fiddler debugger extension
Configure and deploy
Deploy n-tier
Client tier
Deploy Silverlight client
Deploy client application
Connect to multiple application servers
Server tier
Deploy to IIS
Deploy as console app
Deploy as Windows service
Advanced configuration options
Troubleshooting n-tier
Troubleshooting IIS
Two-tier deployment
App.config in detail
Customize startup and shutdown
Connect to data sources
Configure programmatically
Serialize deep graphs
Code samples
Take offline
Prepare to go offline
Save cache locally
Secure offline data
Offline considerations
Code samples
Extend
Customize
Discovery
On-demand discovery
Discovery by context
Faking
The known type primer
Code samples
Additional techniques
POCO
Implement a POCO class
Provide query and save services
Provide query support
Provide save support
Make your POCO query a first class citizen
Obtain access to entity services
OData
Enabling OData
Call server methods
Remote server method call (RSMC)
Subscribe to a pub-sub service
Persistent Database Connections
Precompile views to improve performance
Code samples
Code samples
Start code samples
Code sample: Simple console app (Silverlight)
Code sample: Simple console app (WPF)
Code sample: Simple Silverlight application (Silverlight)
Code sample: Separate model projects (Silverlight)
Code sample: Hello DevForce (WPF)
Code sample: Hello, DevForce Addendum: Adding a Test Project (WPF)
Code sample: Query multiple models (Silverlight)
Model code samples
Code sample: Code First AOP
Code sample: Property interceptors (Silverlight) (WPF)
Code sample: Working with multiple models (Silverlight)
Coping with large models and large databases
Code sample: Code First Walkthrough (WPF)
Code sample: Code First Walkthrough: From New Project to Running
Code sample: Code First Walkthrough: Update the Model and Bind to it
Code sample: Code First Walkthrough: Explicit Entity Mapping
Code sample: Code First Walkthrough: Validation and Property Interception
Code sample: Code First Walkthrough: Separate the Model Project
Code sample: Code First Walkthrough: Testing the Model
Code sample: Code First tour (Silverlight)
Run the DevForce code generator without the EDM Designer
Set the generated model namespace
Stop creating the 'ReadMe' file when (re)generating the Entity Model
Code sample: WinForms walkthrough (WinForms)
Query code samples
Code sample: Query explorer (WinForms)
Code sample: Stored procedure queries (Silverlight)
Code sample: Many-to-Many (Silverlight)
Code sample: Querying (Desktop)
Code sample: Querying (Silverlight)
Display code samples
Code sample: Use a paged collection (Silverlight)
Code sample: Use the EntityQueryPager (WPF)
Code sample: Paging with the ObjectDataSource (Silverlight)
Code sample: Grouping and filtering with the ObjectDataSource (Silverlight)
Code sample: Editing with the ObjectDataSource (Silverlight)
Code sample: Simple combo box (Silverlight)
Code sample: Binding Telerik controls (WPF)
Create, modify and delete code samples
Code sample: Adding and deleting (Silverlight)
Code sample: Cascading deletes (Console)
Code sample: Working with Entities (Silverlight)
Code sample: Working with Entities (Desktop)
Code sample: NumericIdGenerator
Validation code samples
Code sample: Validation Lab (Desktop)
Code sample: Validation support files
Code sample: Validation (Silverlight)
Code sample: Validation (WPF)
Save code samples
Code sample: Concurrency Conflicts (WPF)
Security code samples
Code sample: ASP.NET membership and roles (Silverlight)
Code sample: ASP.NET profile (Silverlight)
Code sample: Secure infrastructure (Silverlight)
Code sample: Windows Authentication (non-ASP.NET)
Test, log and debug code samples
Code sample: Trace viewer (Silverlight)
Code sample: Trace viewer (WPF)
Configuration and deployment code samples
Walk through: Use Package/Publish with a DevForce Silverlight application
Walk through: N-Tier configuration starter tool (Console) (WPF)
Code sample: Add GZip support (Silverlight)
Code sample: Configure n-tier client communications with WCF
Code sample: Customize n-tier client configuration in code
Code sample: Configure EntityServer communications with WCF
Code sample: Customize EntityServer configuration in code
Code sample: Config files
Code sample: Using DataSourceExtensions (Console)
Code sample: Custom DataSourceKeyResolver (Console)
Offline code samples
Code sample: Save and restore cache state using chained streams
Code sample: Save and restore encrypted cache state (Console)
Extend code samples
Code sample: Silverlight modularity with Prism (Silverlight)
Code sample: Unit testing with the Fake store
Additional code samples
HTML/JS
Code sample: BigShelf with RIA/JS
Code sample: OData.JS
Windows 8 Metro apps in JavaScript
iOS
MEX on the iPad
MVVM
BookShelf: the PDC 2010 MVVM sample with DevForce (Silverlight)
Intersoft ClientUI MVVM with DevForce (Silverlight) (WPF)
MVVM Light with DevForce (Silverlight)
Code sample: Minimalist approach to Add-Edit-Delete forms using MVVM (WPF)
Code Sample: MVVM made simple (WPF)
POCOs
Code sample: POCOs (Silverlight)
Silverlight
Code sample: Secura Mail
Code sample: TourneyJett
Scoring goals with DevForce
Scoring goals: Create a SQL database
Scoring goals: Create an XML conversion app
Scoring goals: WinForm to Silverlight, converting the CRUD (Part 1 of 2)
Scoring goals: WinForm to Silverlight, converting the CRUD (Part 2 of 2)
Code sample: Silverlight search form using Intersoft's Client UI
Silverlight 5 FAQ
WPF
Code sample: OData Tour
Code sample: Push notification (Silverlight) (WPF)
Code sample: Remote Server Methods (Silverlight)
Code Sample - OData with Basic Authentication
Sample applications
Cocktail: Happy Hour tutorials
Cocktail: TempHire reference application
BigShelf with RIA/JS
BookShelf: the PDC 2010 MVVM sample with DevForce (Silverlight)
MVVM Light with DevForce (Silverlight)
OData/JS tour
Prism Explorer
Silverlight tour
WPF tour
DevForce release notes
6.1.16 release notes
6.1.15 release notes
6.1.14 release notes
6.1.13 release notes
6.1.12 release notes
6.1.11 release notes
6.1.10 release notes
6.1.9 release notes
6.1.8.1 release notes
6.1.7.1 release notes
6.1.6 release notes
6.1.5 release notes
6.1.4 release notes
6.1.3 release-notes
6.1.2 release notes
6.1.1 release notes
6.1 release notes
6.0.9 release notes
6.0.8 release notes
6.0.7 release notes
5.2.9 release notes
DevForce Classic release notes
DevForce WinForms DataBinders release notes
Side-by-side DevForce 2012 installation
Cocktail overview
Getting started
Development guide
Cocktail Application Architecture
Dependency Injection and MEF
ViewModels
Bootstrapping
EntityManager Abstraction
Unit Of Work Pattern And Persistence Ignorance
Validation
Authentication
Dialogs and Message Boxes
Advanced topics
Dynamic loading of XAP files
Screen harness
Additional resources
Reference apps and tutorials
The Happy Hour Tutorial
Bare bones MVVM
An MVVM Cocktail
Conventions and diagnostics
Data in a ListBox
Entity Views
Talk to the View
Images and ValueConverters
TempHire reference application
Transitioning from the DevForce Application Framework to Cocktail
Cocktail release notes
1.1.6 release notes
1.1.5 release notes
1.1.4 release notes
1.1.3 release notes
1.1.2 release notes
1.1.1 release notes
1.1.0 release notes
1.0.4 release notes
1.0.3 release notes
1.0.2 release notes
1.0.1 release notes
1.0.0 release notes
0.7.0 release notes
0.6.3 release notes
0.6.0 release notes
0.5.0 release notes
0.4.0 release notes
0.3.1 release notes
Contact us
Improve the wiki
DevForce 2012
Tag Cloud
Data Binding
Data Sources
Design Views
Validation
Anonymous
Architecture
ASP.NET
Asynchronous
Attach
Azure
CacheQueryOptions
Caching
Closure
Cocktail
code first
Code Generation
Code Sample
Concurrency
Configure
Cookbook
Coroutine
Create
Debug
Delete
Deploy
DevForce 2012
DevForce-Caliburn framework
Disconnect
Discovery
Display
Dynamic query
EDM
EDMX
Entity cache
Entity Framework
EntityAspect
EntityCache
EntityKey
EntityKeyQuery
EntityManager
EntityProperty
EntityQuery
EntityQueryOperation
EntitySaveOperation
EntityServer
EntityServerSaveInterceptor
EntityState
EntityVersion
ESQL
Exception
Extensibility
Extension
Faking
Fetching
FetchStrategy
IIS
Include
Interception
iOS
IVerifierProvider
JavaScript
LINQ
Localization
Log
MEF
MergeStrategy
Metadata
MetadataType
Model
Multi-threading
MVVM
Navigation
Object Mapping
ObjectDataSource
OData
Offline
Paging
Performance
Persistence
POCO
Predicate
PredicateBuilder
PredicateDescription
Prism
Property Interceptors
PropertySortSelector
Push
Query
Query cache
Query Inversion
QueryStrategy
Refetch
Refresh
Release Notes
Sample Application
Save
SaveOptions
SaveResult
SaveStatus
Saving
Security
Serialization
Silverlight
Stored Procedure
Telerik
Template
Test
ToQuery
Tour
Transactions
Troubleshooting
Validation
Verifier
VerifierEngine
Video
Visual Studio
WCF
WinForms
WIP
WPF
Spaces
|
2009Documentation
|
Documentation