如何使用WCF框架和EF框架实现对数据库的操作

简介: 如何使用WCF框架和EF框架实现对数据库的操作

前面已经介绍过如何搭建WCF框架和EF框架,然后我们就要开始写代码了,

由于EF框架拥有强大的API,我们写代码的时候可以直接调用其中的方法。

以操作员注册员工为例:

当我们添加新建项WCF服务后,会自动生成如下图的类和接口()

然后我们在IServiceDAl中写下如下代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
namespace EFtest
{
    // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码和配置文件中的接口名“IService1”。
    [ServiceContract]
    public interface IServiceDAL
    {
        #region T_UserInfo表
        /// <summary>
        /// 操作员注册新用户
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        [OperationContract]
        int InsertUserInfo(UserInfoEntity user);
        #endregion
    }
}

然后在自己根据数据库表新建的DAL(例如UserInfoDAL)中添加如下代码

using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System;
namespace EFtest.DAL
{
    public class UserInfoDAL
    {
        public int InsertUser(UserInfoEntity user)
        {
            try
            {
                //连接数据库
                //数据库名称为:SystemCooperationEntities2
                //新定义的一个名称为 system
                using (SystemCooperationEntities2 system = new SystemCooperationEntities2())
                { 
                    //将新建实体放到数据库实体的集合
                     system.UserInfoEntity.Add(user);
                    //写回数据库
                    return system.SaveChanges();
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
    }
}

然后再在服务(Service1)里边写代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using EFtest.DAL;
namespace EFtest
{
    // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码和配置文件中的类名“Service1”。
    public class Service1 : IServiceDAL
    {
        #region T_UserInfo表
        public int InsertUserInfo(UserInfoEntity user)
        { 
            UserInfoDAL userInfoDAL = new UserInfoDAL();
            return userInfoDAL.InsertUser(user);
        }
        #endregion
    }
}

然后F5

输入自己要添加的信息以后,点击调用,就可以成功啦(如下图)

返回值为1说明插入成功

你可以去自己的数据库查看是否真的增加了一条数据哦。

希望能帮助到你!

相关文章
|
2月前
|
搜索推荐 前端开发 算法
基于用户画像及协同过滤算法的音乐推荐系统,采用Django框架、bootstrap前端,MySQL数据库
本文介绍了一个基于用户画像和协同过滤算法的音乐推荐系统,使用Django框架、Bootstrap前端和MySQL数据库构建,旨在为用户提供个性化的音乐推荐服务,提高推荐准确性和用户满意度。
110 7
基于用户画像及协同过滤算法的音乐推荐系统,采用Django框架、bootstrap前端,MySQL数据库
|
2月前
|
SQL Java 数据库连接
Hibernate 是一款开源 ORM(对象关系映射)框架,封装了 JDBC,允许以面向对象的方式操作数据库,简化了数据访问层的开发。
Hibernate 是一款开源 ORM(对象关系映射)框架,封装了 JDBC,允许以面向对象的方式操作数据库,简化了数据访问层的开发。通过映射机制,它可以自动处理对象与数据库表之间的转换,支持主流数据库,提高了代码的可移植性和可维护性。其核心接口包括 SessionFactory、Session 和 Transaction 等,通过它们可以执行数据库的 CRUD 操作。配置方面,需在项目中引入 Hibernate 及数据库驱动依赖,并创建 `hibernate.cfg.xml` 配置文件来设置数据库连接和 Hibernate 行为参数。
37 1
|
3月前
|
开发框架 缓存 NoSQL
基于SqlSugar的数据库访问处理的封装,在.net6框架的Web API上开发应用
基于SqlSugar的数据库访问处理的封装,在.net6框架的Web API上开发应用
|
3月前
|
开发框架 Oracle 关系型数据库
ABP框架使用Oracle数据库,并实现从SQLServer中进行数据迁移的处理
ABP框架使用Oracle数据库,并实现从SQLServer中进行数据迁移的处理
|
2月前
|
存储 开发框架 .NET
ASP.NET Web Api 使用 EF 6,DateTime 字段如何取数据库服务器当前时间
ASP.NET Web Api 使用 EF 6,DateTime 字段如何取数据库服务器当前时间
|
2月前
|
druid Java 数据库连接
SpringBoot项目整合MybatisPlus持久层框架+Druid数据库连接池,以及实现增删改查功能
SpringBoot项目整合MybatisPlus和Druid数据库连接池,实现基本的增删改查功能。
179 0
|
2月前
|
SQL 关系型数据库 数据库
EF Core连接PostgreSQL数据库
EF Core连接PostgreSQL数据库
28 0
|
2月前
|
开发框架 NoSQL 关系型数据库
基于SqlSugar的开发框架循序渐进介绍(27)-- 基于MongoDB的数据库操作整合
基于SqlSugar的开发框架循序渐进介绍(27)-- 基于MongoDB的数据库操作整合
|
3月前
|
开发框架 前端开发 关系型数据库
ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
|
3月前
|
存储 监控 安全
安全规范问题之跟数据库交互涉及的敏感数据操作需要有哪些措施
安全规范问题之跟数据库交互涉及的敏感数据操作需要有哪些措施
下一篇
无影云桌面