在我看來,Context類是一個控制檯,它的對象可以調用任何包含的功能,例如WCF Ria服務中的Datacontext和DomainContext。我理解這個概念嗎?如果是這樣,我需要在自己的類層次結構中創建一個上下文類?什麼是上下文?
除了DataContext之外,.net框架還有哪些其他衆所周知的Context類?
在我看來,Context類是一個控制檯,它的對象可以調用任何包含的功能,例如WCF Ria服務中的Datacontext和DomainContext。我理解這個概念嗎?如果是這樣,我需要在自己的類層次結構中創建一個上下文類?什麼是上下文?
除了DataContext之外,.net框架還有哪些其他衆所周知的Context類?
您可以將上下文看作是諸如HttpContext,DbContext,ObjectContext等相關「事物」的包裝。即:HttpContext包含您可以爲HTTP相關操作獲取的任何信息。
DbContext包含數據庫通信的方法和屬性。同樣,ObjectContext。
我會說這是一個佔位符或容器的相關事物的東西。
對我來說,一個上下文對象定義了一組綁定到當前執行路徑的值和/或函數。換句話說,就像面談上下文中的技術話題一樣,在討論晚餐時與講同一主題不同,上下文根據影響消費代碼的運行時環境的因素而改變。這看起來很抽象,但我現在想不出一個更好的方式來描述它!
.NET中另一個着名的上下文是HttpContext
對象。哪些值將根據正在處理的Http操作而改變。例如,網址將在HttpContext.Current.Request.Uri
中更改。希望將它放在上下文中:)
上下文通常是一組操作的存儲機制。 HttpContext
,對於example
封裝有關單個HTTP請求的所有HTTP特定信息。
對於您的WCF示例,「上下文」是服務。不同的服務有不同的上下文。上下文可以像你想要的那樣精細。有些很寬泛,如DomainContext
,有些是細化的,如HttpContext
。
上下文無處不在,當您需要訪問或設置類似頭腦的數據或功能時,可以將它們分配給可以分離的事物。
所有上下文都是這樣的,它們只是封裝了特定操作集的邏輯。
Here是另一篇描述上下文設計模式的文章。
我喜歡你的解釋,直到你的類比。 – DarthVader
公平不夠,反正我沒有賣。感謝您的評論 – devshorts
所以上下文不僅僅是一個「幫手」類... – Jess