客户端项目类型设计为:winform(winform窗体项目类型)
处事器端项目类型设计为:asp.net mvc4 webapi
在这里分为项目运行和调试两种情况讨论:
运行:
这种情况指的是处事器端项目已经开发完成,可以把其部署到iis中(:8748)括号里是处事器端部署到iis上的访谒地点,客户端访谒处事器时要使用
调试:
调试的时候可以把客户端和处事器端创建在同一个解决方案下。调试法式:先要运行处事器项目,然后在托盘里检察处事器的访谒地点
把处事器访谒地点赋值给我客户端,运行客户端访谒处事器端即可。
二、创建处事器端项目
首先打开vs2012开发环境软件,
1、创建空白的解决方案
操纵法式:文件—》新建—》项目—》其他项目类型—》visual studio 解决方案
解决方案定名为:MyTest
2、创建处事器端
右键单击上一步创建的解决方案—》添加—》新建项目—》web-->asp.net mvc4 web应用措施(定名为:MyServer)--》web api(mvc项目模板)
3、添加webapi控制器
右键单击MyServer项目中的Controllers文件夹—》添加—》控制器(定名为User)--》空API控制器
在控制器中添加要领
[HttpGet]
public string GetUserInfo(string userName, string passWord)
{
if (userName == "admin" && passWord == "123456")
{
return "success";
}
else
{
return "failed";
}
}
此外在文件WebApiConfig中添加自界说的路由法则
config.Routes.MapHttpRoute(
name: "MyApi",
routeTemplate: "api/{controller}/{action}/{key}",
defaults: new { key = RouteParameter.Optional }
);
三、创建客户端(client)
右键单击解决方案“MyTest”—》添加—》新建项目—》Windows—》Windows窗体应用措施 (并定名为:MyClient)
在默认的窗体Form1上设计界面如下:
窗体form1的后台代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MyClient
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnSubmit_Click(object sender, EventArgs e)
{
string userName = txName.Text.Trim();
string passWord = txPwd.Text.Trim();
string url = @"http://localhost:47673/api/File/GetUserInfo?userName=" + userName + "&passWord="+passWord;
HttpClient client = new HttpClient();
HttpResponseMessage response = client.GetAsync(url).Result;
string str= response.Content.ReadAsStringAsync().Result;
MessageBox.Show(str);
}
}
}
注意在客户端引用措施集 System.Net.Http;引用要领:右键单击MyClient中的引用文件夹—》添加引用—》措施集
同时在form1的后台代码中也要添加using System.Net.Http;引用
四、调试
1、在vs2012中,,选中处事器端项目,编译通过后,执行“开始执行(不调试)”
2、检察处事器的访谒地点,要领如下图
在托盘中右键单击IIS Express
把客户端后台代码中的访谒地点URL替换为:
string url = @"http://localhost:8748/api/User/GetUserInfo?userName=" + userName + "&passWord="+passWord;
3、启动客户端项目
在解决方案中,选中客户端项目(设为启动项目),MyClient启动调试即可