1.WPF做自承载的WCF服务

– 在WPF工程项目中添加【WCF服务】项
– 配置App.config文件(如binding=”netTcpBinding”和contract)

<services><service name="ServerUDP_PAD.TCPServer"><endpoint address="net.tcp://localhost:55555/TCPServer" binding="netTcpBinding" contract="ServerUDP_PAD.ITCPServer"><identity><dns value="localhost" /></identity></endpoint><endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /><host><baseAddresses><add baseAddress="http://localhost:8733/Design_Time_Addresses/ServerUDP_PAD/TCPServer/" /></baseAddresses></host></service></services>

– 定义服务与回调协定,定义通信模式为双工,并实现服务内容

[ServiceContract(Namespace ="PADService",SessionMode = SessionMode.Required,CallbackContract =typeof(ITCPClient))]public interface ITCPServer{[OperationContract(IsOneWay = true)]void Login(string username, string password);[OperationContract(IsOneWay = true)]void Register(string userInfo);[OperationContract(IsOneWay = true)]void Logout(string username);}public interface ITCPClient{[OperationContract(IsOneWay = true)]void C_Login(string info);[OperationContract(IsOneWay = true)]void C_Logout(string info);[OperationContract(IsOneWay = true)]void C_Regist(string result);}

2.WPF客户端

– 添加服务引用,URI为App.config的Host节点中的baseAddress
– 添加代理类并实现接口

class proxy : ITCPServerCallback{public void C_Login(string info){//}public void C_Logout(string info){//}public void C_Regist(string result){//}}
  • (本例中)new TCPServerClient实例,参数为代理类实例的的上下文
TCPServerClient client = new TCPServerClient(new System.ServiceModel.InstanceContext(new proxy()));

3.C#连接Mysql数据库

– 在mysql官网下载对应dll库文件,地址为
http://dev.mysql.com/downloads/connector/net/,选择ZIP格式下载

– 将MySql.Data.dll文件添加引用

– 代码示例

using MySql.Data.MySqlClient;class Connection{private static string strConn = "DataSource=localhost;user id=root;password=******;database=****";private MySqlConnection conn = null;public MySqlConnection GetConnction(){try{conn = new MySqlConnection(strConn);conn.Open();return conn;}catch(Exception e){MessageBox.Show(e.ToString());return null;}}//从数据库中获取相应数据,返回DataSetpublic DataSet GetData(string sql){DataSet ds = new DataSet();MySqlCommand cmd = new MySqlCommand(sql, GetConnction());MySqlDataAdapter adapter = new MySqlDataAdapter(cmd);adapter.Fill(ds);//关闭连接CloseConn();return ds;}//异步向数据库插入一条数据,返回bool值public int SetData(string sql){int result = 0;try{MySqlCommand insert_cmd =GetConnction().CreateCommand();insert_cmd.CommandText = sql;insert_cmd.CommandTimeout = 10;result =insert_cmd.ExecuteNonQuery();}catch(Exception e){CC.debug_println(e.ToString());}//关闭连接CloseConn();return result;}public void CloseConn(){try{conn.Close();}catch(Exception e){MessageBox.Show(e.ToString());}}}

另记

  1. Mysql 5.6.24 解压版配置mysql的默认编码方式,上结果图

    步骤

    1. 复制一份my-default.ini,命名为my.ini
    2. 修改两处(1)在[mysqld]下添加一行character_set_server=utf8
      (2)在sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES下添加两行
      [client]
      default-character-set=utf8
    3. 重启mysql
      (windows下先输入 net stop mysql后输入net start mysql)
      (linux下输入service mysqld restart)

被中文乱码坑过的小伙伴都应该清楚这样做有多重要!!!

后记,出的奇葩错误

  1. 当插入一条语句时,数据库中出现两条(未解决)

    • 表面问题解决,在insert语句后立刻使用select语句查询这个insert语句的信息出现了问题-关键词是锁;

C#做园区规划设计论坛服务系统笔记相关推荐

  1. 极客时间-如何设计一个秒杀系统-笔记0到2章

    极客时间-如何设计一个秒杀系统-笔记0到2章 0.开篇词-系统秒杀系统架构设计都有哪些关键点? 1.设计秒杀系统时应该注意的5个架构原则 1.数据要尽量少 2.请求数要尽量少 3.路径要尽量少 4.依 ...

  2. 黄朝晖 PHP,黄朝晖 - 领域专家 - 创新设计知识服务系统

    会议报告 [1] Huang Zhaohui, Li Xingchi The Application of Embobied Theory in the Design of Cultural Crea ...

  3. 基于Spring Boot垂钓服务系统的设计与实现毕业设计源码071739

    目  录 摘要 1 绪论 1.1 研究背景 1.2研究意义 1.3相关技术介绍 1.4论文结构与章节安排 2垂钓服务系统需求分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性 ...

  4. 计算机辅助旅游景观规划设计pdf,旅游规划图件及其制作.ppt

    <旅游规划图件及其制作.ppt>由会员分享,可在线阅读,更多相关<旅游规划图件及其制作.ppt(14页珍藏版)>请在人人文库网上搜索. 1.第九章 旅游规划图件及其制作,一.旅 ...

  5. 【附源码】计算机毕业设计SSM汽车维修服务系统

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  6. 项目_基于Android的信息化医疗服务系统

    文章目录 基于Android的信息化医疗服务系统 1.前言 2.项目背景 3.概要设计 3.1.系统概要 3.2.系统结构 3.2.功能设计 3.2.1.管理员 3.2.2.医生 3.2.3.用户 3 ...

  7. 新时期政务服务系统整合对接模式探析

    引言 近年来,随着"一网一门一次"改革的大力推进,我国政务信息化迅猛发展,服务渠道不断拓展,服务内容不断丰富,服务形式不断创新,政策环境.社会环境.技术环境也随之不断演变,政务信息 ...

  8. 怎样为程序员做职业规划

    真正的智慧是拥有对人心的判断力.记得<论语>中也讲过:真正的智慧就是知人,用正直的力量影响周围,影响社会.这种智慧会使我们能够深深地沉静下来,面对每一位程序员以及其背后经历过的历史,能够顺 ...

  9. T系统和应用集成-从SOA架构思想到服务架构规划设计

    T系统和应用集成-从SOA架构思想到服务架构规划设计 原创 人月聊IT 2020-09-23 13:48:20 作者:人月神话,新浪博客同名 简介:多年SOA规划建设,私有云PaaS平台架构设计经验, ...

最新文章

  1. 终于知道如何才能取得HtmlEditor里的数据了
  2. 奇怪的.strip(alir) #()里面有东西 待问老师........
  3. wsus问题之无法访问 WSUS 控制台
  4. linux 端口 837,《Linux菜鸟入门》系统日志
  5. Codeforce C. Buns
  6. OpenCASCADE绘制测试线束:OCAF 命令之应用命令
  7. eclipse linux环境下编译器的指定设置
  8. Python 得到主机字节序
  9. Redis高可用分布式内部交流(九)
  10. centos6.5系统bash损坏之救援模式修复
  11. Mybatis-Plus 使用操作_1
  12. Practical Machine Learning实用机器学习 章1
  13. 人人商城小程序下单付款报错:“服务器暂时无法处理您的请求,请稍后再试”
  14. 盘点国外名企的管理奇招
  15. 计算机类中英附录,欧盟gmp附录1计算机系统(中英文对照).doc
  16. 鲁大师与EVEREST哪个好?
  17. 2020宁波银行终面一分钟抽词演讲
  18. 《计算机科学概论(第12版)》—第1章1.3节海量存储器
  19. 关于在多重积分以及曲线曲面积分中对称性的应用
  20. Linux驱动学习笔记之触摸屏驱动

热门文章

  1. SecureCRT8.1使用方法
  2. [展览人周刊]华展云20170626期
  3. 异步传输中的批量发送问题
  4. 使用moveToThread时的内存释放以及注意事项
  5. Oracle数据库用户密码设为无限期
  6. 怎么把xml文件到url post方法 android,如何在android中使用http post发送xml文件.我把xml文件放在代码中...
  7. 【Day24 文献精读】Metaphoric structuring: understanding time through spatial metaphors
  8. 外排序 归并排序 超级详细 拜托点赞
  9. 风机负载下无刷直流电机数学建模及闭环速度控制simulink仿真
  10. 日照分析的计算机精度,郴州市规划局建筑工程日照分析技术规定(试行)