打造首个WCF应用程序,WCF首个示范

① 、WCF服务端应用程序

壹 、WCF服务端应用程序

二 、WCF服务端应用程序

  ① 、创造WCF服务端应用程序项目

  一 、创造WCF服务端应用程序项目

先是步,创设WCF服务应用程序项目

    开拓Visual Studio
2011,在菜单上点击文件—>新建—>项目—>WCF服务应用程序。在弹出界面的“名称”对应的文本框中输入“WcfService”,然后点 击“鲜明”按钮。如下图。

    打开Visual Studio
二零一三,在菜单上点击文件—>新建—>项目—>WCF服务应用程序。在弹出界面的“名称”对应的文本框中输入“WcfService”,然后点 击“鲜明”按钮。如下图。

开辟Visual Studio
二〇一六,在菜单上点击文件—>新建—>项目—>WCF服务应用程序。在弹出界面的“名称”对应的文本框中输入“SCF.WcfService”,然后点击“分明”按钮。如下图。

    威尼斯人6799.com 1

    威尼斯人6799.com 2

威尼斯人6799.com 3

   2、安装Entity Framework

   2、安装Entity Framework

第二步 , 安装Entity Framework

1)  使用NuGet下载最新版的Entity Framework
6.1.3。在缓解方案能源管理器中——>在项目SCF.WcfService上鼠标右键单击——>弹出2个菜单,选中“管理消除方案的NuGet程序包”,打开NuGet程序包管理界面。如下图。

 威尼斯人6799.com 4

2)      在NuGet程序包管理界面中检索
Entity,找到最新版本Entity Framework,点击安装。如下图。

 威尼斯人6799.com 5

3)      安装到位之后,如下图。

 威尼斯人6799.com 6

 

 

   1)使用NuGet下载最新版的Entity Framework
6.1.3。在缓解方案财富管理器中——>在档次WcfService上鼠标右键单击——>弹出2个食谱,选中“管理消除方案的NuGet程序包”,打开NuGet程序包管理界面。如下图。

   1)使用NuGet下载最新版的Entity Framework
6.1.3。在消除方案能源管理器中——>在项目WcfService上鼠标右键单击——>弹出2个菜单,选中“管理消除方案的NuGet程序包”,打开NuGet程序包管理界面。如下图。

第三步,创建 SCF.Common 项目

  1. 在菜单栏上,依次接纳“文件–>新建–>项目”,恐怕正如图在“化解方案财富管理器”中采纳鼠标右键,弹出飞快菜单。
    如下图。威尼斯人6799.com 7
  2. 在“添加新类型”对话框中,展开 “Visual
    C#”和“Windows”节点,然后拔取“类库”模板。
  3. 在“名称”文本框中,输入
    SCF.Common,然后采取“鲜明”按钮。 如下图。

 威尼斯人6799.com 8

  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();
            }
        }
    }

}

 

   威尼斯人6799.com 9

   威尼斯人6799.com 10

第肆步,创制实体数据模型

  1. 在菜单栏上,依次选拔“文件”、“新建”、“项目”。

  2. 在“新建项目”对话框中,展开 “Visual
    C#”和“Winodws”节点,然后选取“类库”模板,在“名称”对话框中输入“SCF.Model”,然后点击显然按钮。
    创设SCF.Model项目。如下图。

 威尼斯人6799.com 11

  
3.透过NuGet安装相关的组件,具体操作步骤参见第二步。如下图米白框中的组件。

 威尼斯人6799.com 12

     4. 在菜单栏上,依次采纳“项目”、“添加新项”。

     5.
在“添加新项”对话框中,接纳“数据”节点,然后采用“ADO.NET
实体数据模型”项。

     6. 在“名称”文本框中,输入
BookModel,然后采取“添加”按钮。如下图。

 威尼斯人6799.com 13

      7. 在实业数据模型向导中,在采纳模型内容页上,采取“来自数据库的
EF 设计器”,然后再选拔下一步按钮。 如下图。

 威尼斯人6799.com 14

    8.
在“采用你的数目连接”页上举办下列步骤之一:

  • 假定下拉列表中蕴藏到 Test
    示例数据库的数据连接,请选用该连接。
  • 要么接纳“新建连接”按钮来安插新数据连接。
    如下图。

 威尼斯人6799.com 15

      9.
在“连接属性”对话框中采纳相应的数据库服务器,输入用户名与密码,选拔要接纳的数据库。如下图。

威尼斯人6799.com 16

    
10.如若数据库须要密码,请采纳“是,在连年字符串中蕴涵敏感数据”选项按钮,然后采纳“下一步”按钮。
你可以考察一下上边图中的数据连接。

威尼斯人6799.com 17

 

   11.在“选取你的本子”页上,拔取“实体框架6.x”选项按钮,然后采纳“下一步”按钮。

威尼斯人6799.com 18

说明

如果你已经按第二步中安装了具有WCF 服务的 Entity Framework 6 的最新版本,同时通过NuGet安装 WCF Data Services Entity Framework Provider 程序包,那么将不会出现此对话框,直接进入下一步。

 

    
12.在“采纳数据库对象”页上,展开“表”节点、选中“Books”复选框,然后采取“落成”按钮。

         
随即彰显实体模型关系图,BookModel.edmx 文件也将添加到项目中。

 威尼斯人6799.com 19

13.结尾生成的结果如下。

 威尼斯人6799.com 20

   2)在NuGet程序包管理界面中搜寻
Entity,找到最新版本Entity
Framework,点击下载安装。如下图。(作者是现已设置成功)

   2)在NuGet程序包管理界面中找寻
Entity,找到最新版本Entity
Framework,点击下载安装。如下图。(笔者是现已设置成功)

  威尼斯人6799.com 21

  威尼斯人6799.com 22

 

 

  三 、创立实体数据模型

  ③ 、成立实体数据模型

 

 

    1.在菜单栏上,依次选取“文件”、“新建”、“项目”。

    1.在菜单栏上,依次采取“文件”、“新建”、“项目”。

     
2.在“新建项目”对话框中,展开 “Visual
C#威尼斯人6799.com,”和“Winodws”节点,然后选用“类库”模板,在“名称”对话框中输入“WcfModel”,然后点击分明按钮。
创制WcfModel项目。如下图。

     
2.在“新建项目”对话框中,展开 “Visual
C#”和“Winodws”节点,然后选择“类库”模板,在“名称”对话框中输入“WcfModel”,然后点击显然按钮。
成立WcfModel项目。如下图。

     威尼斯人6799.com 23

     威尼斯人6799.com 24

 

 

    3. 在菜单栏上,依次采取“WcfModel项目”、“添加新项”。

    3. 在菜单栏上,依次选用“WcfModel项目”、“添加新项”。

     威尼斯人6799.com 25

     威尼斯人6799.com 26

 

 

 

 

        2.
在“添加新项”对话框中,采用“数据”节点,然后接纳“ADO.NET
实体数据模型”项。

        2.
在“添加新项”对话框中,选取“数据”节点,然后采用“ADO.NET
实体数据模型”项。

        3. 在“名称”文本框中,输入
BookModel,然后采用“添加”按钮。如下图。

        3. 在“名称”文本框中,输入
BookModel,然后选用“添加”按钮。如下图。

    威尼斯人6799.com 27

    威尼斯人6799.com 28

     

     

     4.在实业数据模型向导中,在甄选模型内容页上,选拔“从数据库生成”,然后再拔取下一步按钮。
如下图。

     4.在实体数据模型向导中,在采用模型内容页上,选用“从数据库生成”,然后再采用下一步按钮。
如下图。

    威尼斯人6799.com 29

    威尼斯人6799.com 30

    

    

    5.点击“新建连接”  拔取“Microsoft
SQL Server”  点击继续

    5.点击“新建连接”  采取“Microsoft
SQL Server”  点击继续

    威尼斯人6799.com 31

    威尼斯人6799.com 32

     

     

 

 

   6.在“连接属性”对话框中甄选相应的数据库服务器,输入用户名与密码,接纳要使用的数据库。如下图。(也得以应用Windows登录)

   6.在“连接属性”对话框中挑选相应的数据库服务器,输入用户名与密码,选拔要利用的数据库。如下图。(也足以应用Windows登录)

    威尼斯人6799.com 33

    威尼斯人6799.com 34

  

  

   7.点击显然后转变的页面,如下图所示,在点击下一步

   7.点击显然后变化的页面,如下图所示,在点击下一步

   威尼斯人6799.com 35

   威尼斯人6799.com 36

 

 

   8.抉择数据库对象和设置

   8.取舍数据库对象和装置

   威尼斯人6799.com 37

   威尼斯人6799.com 38

 

 

   9.末尾生成的结果

   9.尾声生成的结果

  威尼斯人6799.com 39

  威尼斯人6799.com 40

 

 

相关文章