http://www.codeplex.com/pstfsconnector The Visual Studio Team System Project Server 2007 Connector is designed to integrate the project management capabilities of VSTS with Project Server 2007. It's been developed by the Visual Studio Team System Rangers in response to significant customer demand for a connector solution. Future versions of Team System will have native integration with Project Server, in the meantime this Connector solution is the best way to integrate the two Microsoft products. This solution builds on the previous PS2003 VSTS Connector , published on GotDotNet. This solution is intended to provide guidance, provided as source code that can be used "as is," extended, or modified by developers to use on enterprise development projects.
This is a presentation in itself The size of the development team has big effect on branching options Branching typically involves: Taking a snapshot of source code to create isolation – a snapshot may be as of a certain point in time, or a stable or known state of source code (such as the last successful build). The resulting copy is the child branch, and the source from which it was created is called the parent branch. Containing and stabilizing changes within the isolated snapshot in the child branch. Bi-directional synchronization of changes with the parent branch – usually referred to as integrating or merging. We will explain why this is important later in this document. Release Isolation: If you need to work on multiple releases in parallel, you will probably want source code for those releases to be isolated in their own branch – hence release isolation . This is the most common need that causes organizations to start branching their sources. Keep in mind that the term “release” here does not necessarily refer to a new version of your product. It may be appropriate to release your application to your test team from a dedicated branch so that you can work through issues with that release independently from the new development that is continuing on your development branch. Feature Isolation: It is common for teams to embark on new functionality that is either considered experimental or is considered risky enough to merit that work being performed in its own branch. In such cases, feature isolation allows the people working on a given feature to collaborate without exposing the rest of the application to any instability that may result. Team Isolation: It is also common that organizations elect to have sub-teams work in isolation from each other. Team isolation provides the ability for these teams to collaborate without being subjected to the potentially breaking changes that other teams are working on. Some organizations go so far as to create a dedicated branch for every developer on the team. This is not required with Team Foundation Server because of the nature of client-side workspaces discussed earlier. Integration Isolation: Merging changes between branches is often a very destabilizing event. It is sometimes beneficial to maintain an integration branch where active development does not take place but rather serves as a staging area for merges. Changes from other branches can be merged into this branch and then stabilized. Once stable, the changes can be merged back into the other branches. In some organization, the term “breaking changes” refers to the potential destabilization bug fixes or merges can introduce – accordingly they provide for a “breaking changes branch” to accommodate the need for integration isolation.
http://msdn2.microsoft.com/en-us/library/aa730834(VS.80).aspx You know you are on the wrong track if you experience one or more of the following symptoms in your development environment: Merge Paranoia —avoiding merging at all cost, usually because of a fear of the consequences. Merge Mania —spending too much time merging software assets instead of developing them. Big Bang Merge —deferring branch merging to the end of the development effort and attempting to merge all branches simultaneously. Never-Ending Merge —continuous merging activity because there is always more to merge. Wrong-Way Merge —merging a software asset version with an earlier version. Branch Mania —creating many branches for no apparent reason. Cascading Branches —branching but never merging back to the main line. Mysterious Branches —branching for no apparent reason. Temporary Branches —branching for changing reasons, so the branch becomes a permanent temporary workspace. Volatile Branches —branching with unstable software assets shared by other branches or merged into another branch.
Can register DLLS using TechNote 306149 or manually find program filesmicrosoft visual studio 8common7ideprivate assemblies Microsoft.TeamFoundation.Client.dll, Microsoft.TeamFoundation.VersionControl.Common.dll, Microsoft.TeamFoundation.VersionControl.Client.dll
SvnBridge allows you to use TortoiseSVN and other Subversion clients with Team Foundation Server. It converts the calls made by your Subversion client to the API supported by TFS. Http://www.codeplex.com/SvnBridge Scrum for Team System is a free Agile Software Development Methodology add-in for Microsoft Visual Studio Team System , developed by Conchango , in collaboration with Ken Schwaber and the Microsoft Technology Centre UK . http://www.scrumforteamsystem.com Team Look Personify Design TeamLook™ extends Microsoft Outlook so that all stakeholders in a software project can communicate more effectively and gain accurate visibility into project status. TeamLook™ connects to Visual Studio 2005 Team Foundation Server and enables users to view WorkItems, Reports, and other artifacts stored in their Visual Studio 2005 Team System installations. With constant synchronization TeamLook™ functions in a similar manner to other Microsoft Outlook features, reducing training costs and enabling organizations to realize immediate productivity gains. http://www.personifydesign.com/products/teamlook/teamlook.aspx Team System Outlook Addin From Microsoft Israel and free unlike TeamLook (www.personifydesign.com/products/teamlook/teamlook.aspx at $199 per seat) http://blogs.microsoft.co.il/blogs/srlteam/archive/2007/02/05/Team-System-Outlook-Addin-_2D00_-v1.0.aspx Create work item directly from email messages Submit and edit work items Execute stored queries Find work items by ids Export stored queries results Send work items data and queries results http://www.teamprise.com/product/index.html $500 per seat Teamprise is a suite of client applications for accessing Microsoft Visual Studio 2005 Team Foundation Server from outside of the Visual Studio Integrated Development Environment (IDE). Teamprise enables software development teams to use the source control, work item tracking, documents, and reporting features of Team Foundation Server from within the Eclipse IDE, and from other operating systems, including Linux and Mac OS X.
I would recommend you don’t do it unless you have to. We have decided to start new projects on TFS leaving the old on VSS/Sourcegear SOS If we do move over a project we get latest from VSS, break source control binding then add to TFS
Share Point 2007 support Enable use of a separate Share Point farm. Support for SQL Named Instances – This will allow customers to share a SQL server between multiple TFS instances, or with other applications. This has been a commonly requested feature by enterprises. “ Longhorn” server support – TFS will support the next version of the server (and corresponding new version of IIS) that is currently under development. Sync Large Groups – This is a set of work to improve the performance and robustness of TFS’s handling large groups of users (~30,000 or more) granted permission to a TFS instance. Today this can result in a support call to recover from it. Installation on a domain controller – TFS will support installation on a domain controller. This has been a fairly common request from smaller organizations who don’t have the budget for special purpose servers. Improvements to TFS Trial – We’ll plan to improve the trial experience to include warnings as expiration approaches. Non-default ports & web sites – We’ve gotten a bunch of feedback from enterprise customers about TFS’s limited support for alternate web sites and ports running afoul of data center policies. We are going to be improving TFS’s configurability in this respect in Orcas. We won’t be getting everything everyone has asked for but we should make some significant progress. Simplify installation – In Orcas, we will be doing a variety of things to attempt to make installing TFS easier and quicker than it is now. The most significant of them is simplifying the requirements around required domain accounts by supporting the built in machine accounts (like Network Service) where we can. Support for client certificates Upgrade from TFS 2005
Annotate – This is based on the TFS Annotate Power Tool but includes numerous improvements. Folder Diff – Also based on the TFS Tree Diff Power Tool with numerous improvements. Destroy – The ability to permanently delete version control files/folders from TFS. It can also be used to destroy the file contents while preserving the change set history. Get Latest On Checkout – There have been many requests for this feature (which was a change in behavior from SourceSafe). There is now an option that allows you to specify that you want TFS to download the latest version of files when you check them out. Workspace improvements – Workspaces will now support mapping a folder or file under a cloaked folder and wildcard mappings so that you can map all files in a folder without mapping sub folders. Based on experience with large projects, this will simplify workspace definitions for many people. Performance improvements – A variety of Version Control performance enhancements that will improve virtually all aspects of version control performance. The gains for smaller servers/projects (< 10,000 files) will be modest. The gains for larger projects (particularly where the file count approaches 100,000’s) will be substantial. Scale improvements – Fixed out of memory problems on the server when operating on more than a few hundred thousand files at a time. Migration toolkit – Orcas will include a toolkit for building conversion and mirroring solutions between TFS and other systems. In addition, we will release one or more new tools to integrate with popular alternative systems. We expect to release some of these on our Power Tool train before Orcas and will roll them into a post-Orcas release.
Build Support multi-threaded builds with the new MSBuild. Continuous Integration – There are many components to this, including build queuing and queue management, drop management (so that users can set policies for when builds should be automatically deleted), and build triggers that allows configuration of exactly how when CI builds should be triggered, for example – every checkin, rolling build (completion of one build starts the next), etc. Improved ability to specify what source, versions of source, and other build properties. Improved extensibility of the build targets – such as ability to easily execute targets before and after each solution/project is built. Improved ability to manage multiple build machines. Stop and delete builds from within VS. .NET Object model for programming against the build server. Simplified ability to specify what tests get run as part of a build. The ability to story build definitions anywhere in the version control hierarchy
The Challenge - Radically Simplifying Distributed Application Development
Development of connected systems remains costly and frustrating
Different programming models for different tasks
Need for security and reliable messaging
Interoperability with applications on other platforms
Productive service-oriented programming model needed
Cloud Computing
Questions
What is cloud computing?
Horizontal and functional services
What’s it going to change?
Software business models, science, life
How many clouds will there be?
1, 2, 3, infinity
What’s new in cloud computing?
HPC grids, ASPs, hosted services, Multics (!)
Emerging “cloud stack” to support a broad class of programs, including data intensive applications
Living in the Clouds
We want to start a new website, FredsList.com
Our site will provide listings of items for sale, jobs, etc.
As time goes on, we’ll add more features
And illustrate how more cloud capabilities (and corresponding infrastructure components) are used as needed
List of capabilities/components is illustrative, not exhaustive
Our cloud provides a “dataset” abstraction
FredsList doesn’t worry about the underlying components
Step 1: Listings Scenario Simple Web Service API’s Database PNUTS FredsList.com application 1234323, transportation, For sale: one bicycle, barely used FredsList wants to store listings as (key, category, description) 5523442, childcare, Nanny available in San Jose 215534, wanted, Looking for issue 1 of Superman comic book DECLARE DATASET Listings AS ( ID String PRIMARY KEY, Category String, Description Text )
Step 2: System Evolution Simple Web Service API’s Database PNUTS FredsList.com application 1234323, transportation, For sale: one bicycle, barely used Fred belatedly realizes prices are useful information! 5523442, childcare, Nanny available in San Jose 215534, wanted, Looking for issue 1 of Superman comic book ALTER DATASET Listings ADD (Price Float) Schemas are flexible, and evolve 32138, camera, Nikon D40, USD 300 Not every record in a dataset has values defined for all fields declared for the dataset vs.
Step 3: Search Simple Web Service API’s Database PNUTS “ bicycle” FredsList’s customers quickly ask for keyword search Search Vespa “ dvd’s” “ nanny” FredsList.com application ALTER Listings SET Description SEARCHABLE Messaging Tribble Federation of systems offering different capabilities
Step 4: Photos Simple Web Service API’s Database PNUTS FredsList decides to add photos/videos to listings Search Vespa Storage MObStor Foreign key photo -> listing FredsList.com application ALTER Listings ADD Photo BLOB Messaging Tribble Federation of systems offering different performance points
Step 5: Data Analysis Simple Web Service API’s Database PNUTS FredsList wants to analyze its listings to get statistics about category, do geocoding, etc. Search Vespa Storage MObStor Foreign key photo -> listing FredsList.com application ALTER Listings MAKE ANALYZABLE Compute Grid Batch export Pig query to analyze categories Hadoop program to geocode data Hadoop program to generate fancy pages for listings Messaging Tribble
Step 6: Performance Simple Web Service API’s Database PNUTS FredsList wants to reduce its data access latency Search Vespa Messaging Tribble Storage MObStor Foreign key photo -> listing FredsList.com application ALTER Listings MAKE CACHEABLE Compute Grid Batch export Caching memcached And by now, Fred is global, and wants geo-replication!
Data Serving vs. Analysis
Very different workloads, requirements
Data from serving system is one of many kinds of data (click streams are another common kind, as are syndicated feeds) to be analyzed and integrated
The result of analysis often goes right back into serving system
Why Clouds?
On-demand infrastructure to create a fundamental shift in the OE curve:
Do things we can’t do
Build more robustly, more efficiently, more globally, more completely, more quickly, for a given budget
Cloud services should do heavy lifting of heavy-lifting of scaling & high-availability
Today, this is done at the app-level, which is not productive
Requirements for Cloud Services
Multitenant. A cloud service must support multiple, organizationally distant customers.
Elasticity. Tenants should be able to negotiate and receive resources/QoS on-demand.
Resource Sharing. Ideally, spare cloud resources should be transparently applied when a tenant’s negotiated QoS is insufficient, e.g., due to spikes.
Horizontal scaling. It should be possible to add cloud capacity in small increments; this should be transparent to the tenants of the service.
Requirements for Cloud Services
Metering. A cloud service must support accounting that reasonably ascribes operational and capital expenditures to each of the tenants of the service.
Security. A cloud service should be secure in that tenants are not made vulnerable because of loopholes in the cloud.
Availability. A cloud service should be highly available.
Operability. A cloud service should be easy to operate, with few operators. Operating costs should scale linearly or better with the capacity of the service.
Types of Cloud Services
Two kinds of cloud services:
Horizontal (“Platform”) Cloud Services
Functionality enabling tenants to build applications or new services on top of the cloud
Functional Cloud Services
Functionality that is useful in and of itself to tenants. E.g., various SaaS instances, such as Saleforce.com; Google Analytics and Yahoo!’s IndexTools; Yahoo! properties aimed at end-users and small businesses, e.g., flickr, Groups, Mail, News, Shopping
Could be built on top of horizontal cloud services or from scratch
Yahoo! has been offering these for a long while (e.g., Mail for SMB, Groups, Flickr, BOSS, Ad exchanges)
Horizontal Cloud Services
Horizontal cloud services are foundations on which tenants build applications or new services. They should be:
Semantics-free. Must be "generic infrastructure,” and not tied to specific app-logic.
May provide the ability to inject application logic through well-defined APIs
Broadly applicable. Must be broadly applicable (i.e., it can't be intended for just one or two properties).
Fault-tolerant over commodity hardware. Must be built using inexpensive commodity hardware, and should mask component failures.
While each cloud service provides value, the power of the cloud paradigm will depend on a collection of well-chosen, loosely coupled services that collectively make it easy to quickly develop and operate innovative web applications.
What’s in the Horizontal Cloud? Shared Infrastructure Horizontal Cloud Services Edge Content Services e.g., YCS, YCPI Provisioning & Virtualization e.g., EC2 Batch Storage & Processing e.g., Hadoop & Pig Operational Storage e.g., S3, MObStor, Sherpa Other Services Messaging, Workflow, virtual DBs & Webserving Simple Web Service API’s Common Approaches to QA, Production Engineering, Performance Engineering, Datacenter Management, and Optimization ID & Account Management Monitoring & QoS Metering, Billing, Accounting Security
Web Data Management Large data analysis (Hadoop) Structured record storage (PNUTS/Sherpa) Blob storage (SAN/NAS)
Scan oriented workloads
Focus on sequential disk I/O
$ per cpu cycle
CRUD
Point lookups and short scans
Index organized table and random I/Os
$ per latency
Object retrieval and streaming
Scalable file storage
$ per GB
The World Has Changed
Web serving applications need:
Scalability!
Preferably elastic
Flexible schemas
Geographic distribution
High availability
Reliable storage
Web serving applications can do without:
Complicated queries
Strong transactions
SQL Server 2008
SQL Server 2008
Enterprise Data Platform
Policy-Based Management
Management of multiple SQL Server instances from a single location.
Create policies that control security, database options, object naming conventions, and other settings at a highly granular level.
Data Collector
Collect, store, and view performance data automatically.
It collects disk usage, server activity, and query statistics data, which it loads in a management data warehouse and performance data can be reviewed in SQL Server Management Studio or by using third-party tools.
Enterprise Data Platform – Cont’
Data compression
Resource Governor
Allocate resource to high profile applications
Database files encryption
Auditing
Development
MERGE support
Allows easy merge of data for Data Warehouses
Language Integrated Query (LINQ)
A .NET Framework version 3.5 feature that provides developers with a common syntax to query any data source from client applications.
Using LINQ to SQL or LINQ to Entities, developers can select, insert, update, and delete data that is stored in SQL Server 2008 databases using any .NET programming language
Development – Cont’
Change Data Capture (CDC)
Allows you to track changes in the database (insert/update/delete) and store them in a table, for use in Data Warehouses
ADO.NET Entity Framework
An ORM solution, much like Nhibernate
ADO.NET Data Services
A data access infrastructure for Internet applications by enabling Web applications to expose SQL Server data as a service that can be consumed by client applications in corporate networks and across the Internet.
Non Relational Data
Spatial support
Full text search
Large user defined types
Better XML support
Visual Studio Team System
VSTS ALM Solution Excel Project Operations, QA and Help Desk Non-Microsoft Developer Team System Web Access
Facilitate Team Collaboration
Approachable and intuitive products
Tight integration across tools, process and roles
Single integrated server for greater communication and collaboration
Tailored tools for each role Greater team productivity
Team System Architecture Dev Team (Local) Dev Team (Remote) Business User Build Server Version Control Proxy (Remote) Active Directory TCP/IP HTTP / S Win 2003 Server SQL Server 2005 IIS 6.0 Team Foundation Server
Process Enacted By Tooling Choose process when creating a new project
Process IS important in TFS
Take your process/methodology and use it
Does not need to be heavy process
Grab processes from elsewhere
Eg: SCRUM
Easily Customizable through Process Templates
Process Templates:
Make the entire system work the way you want it to work:
Define your (bug, etc) definition, your terms, your form layout, and workflow
Create your own process guidance easily
Create your own look and feel for a collaboration portal
Include all of your document templates, other artifacts
Include your own roles and security settings
Include your own reporting
Team Foundation Server
A single, integrated server for team collaboration:
Team Portal – SharePoint site for team collaboration
Change Management – flexible work item tracking system for requirements, change requests, bugs, issues and other work items
Project Management – manage project resources, timelines and quality
Version Control – robust version control system for all project artifacts, including branching, change sets, and shelving
Build Server – automate team project build, analysis, testing
Reporting – central data warehouse for real-time project metrics and analytics
Team Explorer
Common integrated client to access:
Work Items
Documents
Reports
Team Builds
Source Code Control
Single team view of all project artifacts
Fully integrated into Visual Studio 2005
Available as stand-alone for business analysts, project managers and other team members
Web Access
Browser-based access to
Project Dashboard
Documents
Reports
Work Item Tracking
Source Code Control
Single team view of all project artifacts
Includes Source Control search capabilities
ASP.NET 2.0 Solution
Free Download!
Some Adoption Scenarios
Replace Source Control (Replace SourceSafe)
Need to track bugs, etc.
Want to have a build server to handle promotion management
Need to work towards audit requirements
Support for distributed teams
Compliance and Audit
TFS supports this easily:
Process Guidance details how you work
Work Items provide a granular audit trail
Reports used to supplement this
TFS does all (or most of) the work for you.
Compliance And Auditing Capturing evidence does not have to be a manual process, ...
Compliance And Auditing … because there is a complete audit trail on all the tasks, code, and tests.
Integrated Project Portal Customizable SharePoint portal for team collaboration
Business Requirements Business requirements captured and managed to enable end-to-end traceability
Project Planning Full integration into Microsoft Project for a real-time view of work items
Team Explorer Access work items, project documents, reports, builds and source control from one location
Web Access Access work items, project documents, reports, builds and source control any browser!
Work Item Association Associate work items with each check-in to provide traceability from requirements to code
Check-In Policies Policies enforced by tooling reinforce good development practices
Managing Work Items Manage and analyze work items using Microsoft Excel
Database Change Management A new offline Database project allows you to work with your database schema offline while full integration with TFS allows you to manage and version these changes Rename refactoring makes it easy to make changes to your database schema
Build And Deployment Build verification test results as part of the build process Who checked in what?
What Requirements Haven’t Been Tested? Tracks progression of requirements’ states from untested to passed by successive build
How Far Can We Get In The Available Time? Work completed Work planned
Where Do We Need To Shift Resources? Bulge in work in process (i.e. in testing) indicates inadequate resources or inadequate incoming quality
Scope Creep “ Dark matter” emerging during iteration Planned work is squeezed out
How Effective Is Our Team? Test rates (pass, inconclusive, fail) shown in bars Against code coverage, … code churn, … and active bugs
Inadequate Unit Testing Falling code coverage Fewer passing and more inconclusive tests Rising code churn
Integration with Project Server
Project Server 2007 VSTS Connector available on CodePlex
Workspaces
Workspaces provide Isolated areas
A single PC can have many workspaces
Workspaces are a powerful tool with branching
Branching
Allows parallel development
But for anything that you don't want to service or patch, labelling is sufficient.
For a release that you do want to service or patch, branching is the way to go.
Using merging, you can move changes between branches.
Branching
Using the TFS API
Team Explorer installs all the DLLs are in the GAC, but doesn’t registered them for Visual Studio
Can write own desktop clients to do anything you can in Team Explorer or the command line
Other Cool Tools
SVNBridge – Allows SubVersion client to access TFS
Conchango’s Scrum Project Guidance Pack
Personify Design’s TeamLook Outlook Addin
Microsoft Israel’s Team System Outlook Addin
TeamPrise Client Suite – TFS access from Macs, Linux and Eclipse IDE
NB all clients still need a Team Explorer
TFS & VSS Differences
Architecture
TFS: client/server, VSS: client-side
Security
Windows/AD vs. VSS based security
Reliability
VSS database integrity can be compromised
TFS uses SQL Server
Scalability
TFS can support up to 2000 user per instance and data size is limited only by physical media & SQL Server limits ( in the terabytes)
TFS & VSS Differences
TFS does NOT perform a “get latest” on checkout
“ get latest” and “check out” are 2 separate ops
“ get latest” is explicit in TFS, controlled by the user
Provides a consistent snapshot of code
TFS does NOT add a file until checked in
Migration from VSS to TFS
VSSConverter migration tool
Imports VSS repository into TFS
Command line interface
Can migrate most VSS repositories easily
VSS Shared files are copied
VSS Pinned items are labeled as “PINNED” in TFS
Visual Studio 2008 Administration
Share Point 2007 support
Enable use of a separate Share Point farm.
Support for SQL Named Instances
“ Longhorn” server support
Sync Large Groups (~30,000 or more)
Installation on a domain controller
Non-default ports & web sites
Simplify installation
Upgrade from TFS 2005
Visual Studio 2008 Version Control
Add support for checkin policy overrides to the warehouse (an oversight from V1).
Annotate & Folder Diff
Destroy
Get Latest On Checkout
Workspace improvements
Performance & Scale improvements
Migration toolkit between TFS and other systems
Visual Studio 2008 Build
Support multi-threaded builds with the new MSBuild.
Continuous Integration
Improved ability to specify what source, versions of source, and other build properties.
Improved ability to manage multiple build machines.
Stop and delete builds from within VS.
Simplified ability to specify what tests get run as part of a build.
The ability to store build definitions anywhere in the version control hierarchy
WPF
Why WPF?
Windows Presentation Foundation, part of WinFx, is a completely new presentation framework replacing User, GDI, GDI+, Win32
Competes with HTML, Macromedia Flash, SVG
Give developers the tools to make Office quality applications, but also Flash like websites.
Hello World
C# example
using System; using System.Windows; namespace AvalonExample { class MyApp { [STAThread] static void Main(){ MessageBox.Show(“Hello World!”); } } }
Unified framework for rapidly building service-oriented applications
WCF Design Goals
“ The unified programming model for rapidly building service-oriented applications on the Windows platform”
Unification
Unifies today’s distributed technology stacks
Composable functionality
Appropriate for use on-machine, in the intranet, and cross the Internet
Service-Oriented Programming
Service-oriented programming model
Maximized developer productivity
Interoperability
WS-* interoperability with applications running on other platforms
Interoperability with today’s distributed stacks
Services and Clients Client Service Message Message
Endpoints Client Service Message Endpoint Endpoint Endpoint
WCF Architecture
Address, Binding, Contract Client Service Message Address Binding Contract (Where) (How) (What) A B C A B C A B C
WCF Architecture: Messaging Runtime Client Dispatcher Service Contract and Behaviors Binding Address Transport Encoder Protocol(s) Transport Encoder Protocol(s)
Service Model Layer Influences system operation based on incoming and outgoing messages. Effects of behaviors are local. Messaging Layer Moves messages back and forth and adds transfer semantics. Channels are symmetric. Service Code WCF Architecture: Composition & Behaviors Message Inspector Formatter Behavior Instancing Behavior Security Channel TCP Transport Security Channel TCP Transport Transaction Behavior Formatter Behavior
Three Types of Contracts
Service Contract
Defines Operations, Behaviors and Communication Shape
Data Contract
Defines Schema and Versioning Strategies
Message Contract
Allows defining application-specific headers and unwrapped body content
Ways to Talk
One Way:
Datagram-style delivery
Request-Reply
Immediate Reply on same logical thread
Duplex
Reply “later” and on backchannel (callback-style)
Client Service One Way Request-Reply Duplex (Dual)
Bindings & Binding Elements Transport IPC MSMQ Custom TCP HTTP Protocol Encoders .NET TX Custom Security Reliability Binding HTTP TX Security Reliability Text Text Binary Custom
Standard Bindings N = None | T = Transport | M = Message | B = Both | RS = Reliable Sessions Binding Interop Security Session TX Duplex BasicHttpBinding BP 1.1 N, T N N n/a WSHttpBinding WS M , T, X N , T, RS N , Yes n/a WSDualHttpBinding WS M RS N , Yes Yes WSFederationBinding Federation M N , RS N , Yes No NetTcpBinding .NET T , M T ,RS N , Yes Yes NetNamedPipeBinding .NET T T , N N , Yes Yes NetPeerTcpBinding Peer T N N Yes NetMsmqBinding .NET T , M, X N N , Yes No MsmqIntegrationBinding MSMQ T N N , Yes n/a
Bindings & Behaviors: Security Service Client Be Be Bindings Insert Claims in Messages Behaviors Implement Security Gates C B A C B A A B C C B A
0 comments
Post a comment