WCF學習之旅 第三個示例之一(二十七)

2022-02-09 07:43:30 字數 2372 閱讀 5828

通過前面二十幾個章節的學習,我們知道了什麼是wcf;wcf中的a、b、c;wcf的傳輸模式;wcf的寄宿方式;wcf的異常處理。本文綜合應用以上知識點,一步一步寫乙個小的wcf應用程式——書籍管理系統(bookmgr)。

這個示例就是乙個非常簡單的書籍管理系統,功能有:查詢、修改、新增、刪除(不包括安全、優化等相關問題)、異常處理。wcf的增刪改查和winform相差無幾。wcf只是把具體「實現」寫在「服務端」,而「呼叫」放在了「客戶端」。

1)demo的 「服務端」以本機控制台應用程式為宿主,「客戶端」以winform專案為例。

2)demo的「服務端」提取資料採用初學者比較容易接受的分層結構進行搭建,分別分為服務層、實體層、資料層。

引用關係如下圖所示:

欄位名

列名

資料型別

約束

生成方式

書籍編號

bookid

int主鍵,必須輸入

自增書名

name

nvarchar(200)

必須輸入

人工輸入

類別category

nvarchar(50)

必須輸入

人工輸入

出版數量

numberofcopies

int必須輸入

人工輸入

作者id

authorid

int必須輸入

人工輸入

**price

decimal(18,2)

必須輸入

人工輸入

出版日期

publishdate

datetime

必須輸入

人工輸入

評級rating

nvarchar(5)

非必須輸入

人工輸入

圖1圖2

圖1圖2

1)在專案中建立乙個 ibookservice介面檔案與sqlerror檔案。見下圖。

2)在bookmgr.contracts中建立乙個表示fault異常的類sqlerror.cs。**如下。

using

system;

using

system.collections.generic;

using

system.linq;

using

system.runtime.serialization;

using

system.text;

using

system.threading.tasks;

namespace

bookmgr.contracts

[datamember]

public

string

operation

set

} [datamember]

public

string

errormessage

set }}

}

3)在bookmgr.contracts中ibookservice.cs介面檔案。並分別建立增、刪、改、查、」add」、「edit」、「delete」、「get,search」五個方法,分別對應五個功能的服務應用程式wcf服務應用程式。我在「edit」方法中新增了乙個自定義異常返回的特性。具體**如下。

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

namespace

bookmgr.contracts

}

addEventListener第三個引數作用

dom方法 addeventlistener 和 removeeventlistener 是用來分配和刪除事件的函式。這兩個方法都需要三個引數,分別為 事件名稱 string 要觸發的事件處理函式 function 指定事件處理函式的時期或階段 boolean dom事件流如圖 當第三個引數設定為t...

第三個Sprint總結

成員 羅凱旋 羅林傑 吳偉鋒 黎文衷 第三階段四則運算專案預期的所有功能功能已經實現,包括自動生成各種難度的算式以及計時功能和小遊戲比賽 看誰一分鐘內算的題目最多等等 團隊github 燃盡圖 結果圖 1.每個成員第二個sprint階段有何需要改進?成員介紹 需要改進 羅凱旋首頁的ui設計有待改進,...

addEventListener的第三個引數詳解

示例 element.addeventlistener mousedown func,element.addeventlistener mousedown func,element.addeventlistener mousedown func,element.addeventlistener mo...