二、WCF服務端應用程式 第一步,創建WCF服務應用程式項目 打開Visual Studio 2015,在菜單上點擊文件—>新建—>項目—>WCF服務應用程式。在彈出界面的“名稱”對應的文本框中輸入“SCF.WcfService”,然後點擊“確定”按鈕。如下圖。 第二步 , 安裝Entity Fra ...
二、WCF服務端應用程式
第一步,創建WCF服務應用程式項目
打開Visual Studio 2015,在菜單上點擊文件—>新建—>項目—>WCF服務應用程式。在彈出界面的“名稱”對應的文本框中輸入“SCF.WcfService”,然後點擊“確定”按鈕。如下圖。
第二步 , 安裝Entity Framework
1) 使用NuGet下載最新版的Entity Framework 6.1.3。在解決方案資源管理器中——>在項目SCF.WcfService上滑鼠右鍵單擊——>彈出一個菜單,選中“管理解決方案的NuGet程式包”,打開NuGet程式包管理界面。如下圖。
2) 在NuGet程式包管理界面中搜索 Entity,找到最新版本Entity Framework,點擊安裝。如下圖。
3) 安裝完成之後,如下圖。
第三步,創建 SCF.Common 項目
- 在菜單欄上,依次選擇“文件-->新建-->項目”,或者如下圖在“解決方案資源管理器”中使用滑鼠右鍵,彈出快捷菜單。
如下圖。
- 在“添加新項目”對話框中,展開 “Visual C#”和“Windows”節點,然後選擇“類庫”模板。
- 在“名稱”文本框中,輸入 SCF.Common,然後選擇“確定”按鈕。 如下圖。
4. 在已經創建成功的SCF.Common項目中添加一個XMLHelper .CS文件,寫如下代碼。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml.Serialization; using System.IO; namespace SCF.Common { public class XMLHelper { /// <summary> /// 反序列化成對象 /// </summary> /// <typeparam name="T">對象類型</typeparam> /// <param name="filename">XML文件路徑</param> /// <returns></returns> public static T ParseXML<T>(string filename) { T obj = default(T); XmlSerializer serializer = new XmlSerializer(typeof(T)); /* If the XML document has been altered with unknown nodes or attributes, handle them with the UnknownNode and UnknownAttribute events.*/ // A FileStream is needed to read the XML document. FileStream fs = new FileStream(filename, FileMode.Open); try { obj =(T) serializer.Deserialize(fs); } catch (System.Exception ex) { string s = ex.Message; throw ex; } finally { fs.Close(); } return obj; } /// <summary> /// 反序列化成對象 /// </summary> /// <param name="filename">XML文件路徑</param> /// <param name="type">對象類型</param> /// <returns></returns> public static object ToObject(string filename,Type type) { object obj; XmlSerializer serializer = new XmlSerializer(type); FileStream fs = new FileStream(filename, FileMode.Open); try { obj = serializer.Deserialize(fs); } catch (System.Exception ex) { string s = ex.Message; throw ex; } finally { fs.Close(); } return obj; } /// <summary> /// 反序列化成對象 /// </summary> /// <typeparam name="T">對象類型</typeparam> /// <param name="data">XML數據對象字元串</param> /// <returns></returns> public static T DeSerializer<T>(string data) { T obj = default(T); XmlSerializer serializer = new XmlSerializer(typeof(T)); try { using (StringReader sr = new StringReader(data)) { XmlSerializer xz = new XmlSerializer(typeof(T)); obj = (T)serializer.Deserialize(sr); } } catch (System.Exception ex) { string s = ex.Message; throw ex; } return obj; } /// <summary> /// 創建XML文件 /// </summary> /// <param name="fullFileName">XML文件名</param> /// <param name="data">XML字元串</param> public static void CreateXML(string fullFileName, string data) { using (StreamWriter sw = new StreamWriter(fullFileName, false, Encoding.UTF8)) { sw.Write(data); } } /// <summary> /// 把對象轉換成字元串 /// </summary> /// <typeparam name="T">對象類型</typeparam> /// <param name="t">對象實體</param> /// <returns></returns> public static string ToXML<T>(T t) { using (StringWriter sw = new StringWriter()) { XmlSerializer xz = new XmlSerializer(t.GetType()); xz.Serialize(sw, t); return sw.ToString(); } } } }
第四步,創建實體數據模型
- 在菜單欄上,依次選擇“文件”、“新建”、“項目”。
- 在“新建項目”對話框中,展開 “Visual C#”和“Winodws”節點,然後選擇“類庫”模板,在“名稱”對話框中輸入“SCF.Model”,然後點擊確定按鈕。 創建SCF.Model項目。如下圖。
3.通過NuGet安裝相關的組件,具體操作步驟參見第一步。如下圖中黃框中的組件。
4. 在菜單欄上,依次選擇“項目”、“添加新項”。
5. 在“添加新項”對話框中,選擇“數據”節點,然後選擇“ADO.NET 實體數據模型”項。
6. 在“名稱”文本框中,輸入 BookModel,然後選擇“添加”按鈕。如下圖。
7. 在實體數據模型嚮導中,在選擇模型內容頁上,選擇“來自資料庫的 EF 設計器”,然後再選擇下一步按鈕。 如下圖。
8. 在“選擇你的數據連接”頁上執行下列步驟之一:
- 如果下拉列表中包含到 Test 示例資料庫的數據連接,請選擇該連接。
- 或者選擇“新建連接”按鈕來配置新數據連接。 如下圖。
9. 在“連接屬性”對話框中選擇對應的資料庫伺服器,輸入用戶名與密碼,選擇要使用的資料庫。如下圖。
10.如果資料庫需要密碼,請選擇“是,在連接字元串中包含敏感數據”選項按鈕,然後選擇“下一步”按鈕。 你可以觀察一下下麵圖中的數據連接。
11.在“選擇你的版本”頁上,選擇“實體框架6.x”選項按鈕,然後選擇“下一步”按鈕。
說明 |
如果你已經按第二步中安裝了具有WCF 服務的 Entity Framework 6 的最新版本,同時通過NuGet安裝 WCF Data Services Entity Framework Provider 程式包,那麼將不會出現此對話框,直接進入下一步。 |
12.在“選擇資料庫對象”頁上,展開“表”節點、選中“Books”覆選框,然後選擇“完成”按鈕。
隨即顯示實體模型關係圖,BookModel.edmx 文件也將添加到項目中。
13.最終生成的結果如下。