我有一個簡單的問題。我正在使用WCF創建Web服務。我已經創建了所有的服務而沒有填補運營機構。現在我有了從服務合約中自動生成的wsdl文件。如果我稍後編寫操作實現,這種方法是「合同優先」嗎?合同第一個SOA和WCF合同
回答
是的,因爲你正在定義你和任何人使用你的API之間的合同。通常(但不總是)合約/ API通過接口定義。編輯:正如Namphibian在評論中所說,如果您先構建Web服務合約,那麼您首先需要定義您的WSDL並從那裏生成代碼。我的答案假設你想首先開發一個.NET API合約,並且在事實之後你會將它公開爲一個Web服務。
第二編輯:我想補充一點,SOA原則本身與Web服務無關。您可以構建僅通過其編碼API公開的服務。
這是不完全正確的。您首先模擬合同,但仍依賴.Net框架生成WSDL。在合同優先/ WSDL第一編碼(自上而下)的方法中,您使用XML Spy等工具編寫WSDL文件。然後,您從WSDL生成代碼。在你的方法中,你正在從接口創建一個WSDL。
使用接口是做這種開發的最成功的方法,但是你仍然在先做代碼。讓我以一個例子來澄清。通常在SOA架構中,開發人員遵循WSDL第一種方法。在WSDL第一種方法中,您通常會提交您的WSDL文件供貴公司的SOA治理機構審覈。然後將根據SOA治理策略來衡量此WSDL,以確定它是否合適。一旦批准,那麼代碼工件就會生成。
你在做什麼沒有錯,但它不是合同第一種方法。
那麼你的意思是,只有我自己編寫WSDL文件時,它纔會成爲合同優先方法? –
@NadiaNahar在學術上說是的。請記住,Web服務是使用WSDL描述的合同。這非常像Java或.Net中的接口。但接口並未指定實現。因此,使用合同優先方法,可以在任何技術(.Net/Java/Delphi/PHP)中實施intrface(WSDL)。你的方法基於非常堅實的基礎。始終使用接口而不是實現。這導致了鬆散的耦合和更敏捷的開發。 – Namphibian
- 1. WCF服務合同和數據合同
- 2. WCF多個合同
- 3. WCF流合同
- 4. WCF多個服務合同
- 5. 合同優先SOA:設計業務領域:WCF
- 6. WCF合同屬性
- 7. WCF服務合同
- 8. wcf合同地點
- 9. WCF雙工合同
- 10. 幫助:合同第一Webservices
- 11. 本期合同第一合同最後一期
- 12. 相同服務和合同類型的多個WCF服務
- 13. WCF xmlSerializer和數據合同屬性
- 14. WCF,實體框架和數據合同
- 15. MSMQ和WCF合同 - 未來的增強
- 16. WCF消息合同和名稱空間
- 17. WCF操作合同和清單大小
- 18. WCF合同 - 命名空間和SerializationExceptions
- 19. 設計WCF數據合同和操作
- 20. 動態WCF服務合同
- 21. WCF合同知道域名
- 22. WCF合同更改IsRequiredMessage
- 23. 表格實施WCF合同
- 24. 數據合同問題wcf
- 25. WCF移動合同策略
- 26. WCF契約繼承合同
- 27. WCF中的數據合同
- 28. XSD第一份合同 - WCF Soap Web服務
- 29. 使用多個WCF服務合同
- 30. wcf類執行多個服務合同
是的,我已經使用界面來定義合同。這是正確的方法嗎? –
是的,聽起來不錯! –
@JimSimon你的方法是基於一些好的原則。始終使用接口。然而,這不是安靜的契約第一種方法,它需要創建WSDL並實施。我意外降低了投票率,現在我的投票被鎖定了。你可以編輯答案,讓我可以升職。我道歉,這不是打算。這是星期一早上的早晨,我正忙着第一杯咖啡。 – Namphibian