WCF服務編程設計規範(7):WCF最佳實踐《WCF Best Practice》資料下載與翻譯

    今天繼續《WCF服務編程設計規範》系列,今天推薦一下另一個學習資料,並提供下載。做者是Brian Noyes,Juval Lowy 的同事。PPT資料《WCF Best Practice》,中文翻譯爲《WCF最佳實踐》。今天內容主要包含,做者介紹,資料的目錄結構,而後是翻譯的前三部:服務定義、異常處理和安全。中英文對照。分享給你們。你能夠下載英文版ppt。/Files/frank_xl/WCFBestPractices.pdf
【1】英文目錄 Contents:
WCF Best Practice
    About Brian
    Agenda
    Service Definition
    Service Exception Handling
    Service Security
    Service Hosting
    Self Host Code
    Client Proxy Classes
    Client Proxy Management
    Client Exception Management
    Data Contracts
    SOAP vs. REST
【2】中文目錄:
WCF 最佳實踐
    關於Brian
    大綱
    服務定義
    服務異常處理
    服務安全
    服務託管
    自託管代碼
    客戶端代理類
    客戶端代理管理
    客戶端異常管理
    數據契約
    SOAP和REST

【3】英文名稱:《WCF Best Practice》

中文名稱:《WCF最佳實踐》

【4】About Brian

關於Brian

Brian Noyes
Chief Architect, IDesign
IDesign 首席架構師
brian.noyes@idesign.net
Microsoft Regional Director
微軟區域總監
Microsoft MVP Connected Systems
微軟MVP
Publishing
出版
Ø  Developing Applications with Windows Workflow Foundation,
Ø  LiveLessons training DVD, June 2007
Ø  Smart Client Deployment with ClickOnce, Addison Wesley,January 2007
Ø  Data Binding in Windows Forms 2.0,
Ø  Addison Wesley, January 2006
Ø  MSDN Magazine, MSDN Online,
Ø  CoDe Magazine, The Server Side .NET,
Ø  asp.netPRO, Visual Studio Magazine
Speaking
講座
Ø  Microsoft TechEd US, Europe, Malaysia,
Ø  Visual Studio Connections, DevTeach,
Ø  INETA Speakers Bureau, MSDN Webcasts
Ø E-mail: brian.noyes@idesign.net
Ø Blog: http://briannoyes.net
 

【5】Agenda

大綱

Service Best Practices
服務最佳實踐
Client Best Practices
客戶端最佳實踐
Data Contracts
數據契約最佳實踐
SOAP vs. REST
SOAP Rest

【6】Service Definition

服務定義

Separate contract from implementation
契約與實現分離
Ø Contract (interface) first
契約(接口)優先
Define services in a class library, not directly in a Host project
在類庫裏定義服務,不要在宿主項目裏定義
Layering
分層
Ø Separate Service Layer?
劃分服務層
Instance model
實例模型
Ø Change to Per Call as default
設置Per Call (單調模式)爲默認值
Ø Session / Singleton when?
什麼時候使用會話/ 與單例模式?

【7】Service Exception Handling

服務異常處理

For operation specific exceptions
爲每一個操做指定異常
Ø Try/catch, throw FaultException<T>
Try/catch ,拋出FaultException<T>
Favor using FaultException<T>
推薦使用FaultException<T>
Ø FaultException can be ambiguous to the client because unhandled exceptions arrive as a FaultException
FaultException 對於客戶端來講過於模糊,由於未處理的異常都會在客戶端表現爲FaultException
Include FaultContract in service contract definition if you throw FaultExceptions
若是你要跑出異常,請在服務契約定義裏包含FaultContract (錯誤契約)
Ø Part of the API you are exposing
就要暴露的API 的一部分
For global exception handling from services
對於來此服務全局的異常處理
Ø Use an error handler
使用錯誤處理
Include exception details in debug builds only
只有在調試的時候纔會包含異常的詳細信息

【8】Service Security

服務安全

Intranet services
企業局域網(以太網)服務
Ø Default Windows Auth may be all you need
默認使用Windows 驗證
Ø Possibly Hybrid –Windows Creds / Custom Application Roles
或者使用Hybrid –Windows 憑據/ 自定義Application 角色
Extranet / Internet / Custom security needs
企業外部網絡/ Internet/ 自定義安全需求
Use ASP.NET Membership / Role providers
使用ASP.NET Membership / Role providers
ASP.NET providers
ASP.NET providers
Ø Really a standard .NET framework security infrastructure
一個標準的.NET framework 安全基礎結構
Ø Built in providers for Windows or SQL Server – based credentials / roles
providers 裏爲Windows SQL Server 內建了基於憑據/ 角色的安全機制
Ø Easy to implement custom providers
容易實現自定義providers
Ø Establish principal on the thread
線程上創建principal
Ø Re-usable across ASP.NET, WCF, WPF & Windows Forms (via Client Application Services)
Ø  能夠跨越ASP.NET WCF WPF Windows Forms ( 經過客戶端應用程序服務)
相關文章
相關標籤/搜索