关于WCF服务接口调用
WCF没太接触过 想知道web service调用怎么声明比如按一个按键调用到一个listview里 填表我会 前面怎么写
web references里我命名的abc
private void button2_Click(object sender, EventArgs e)
{
} --------------------编程问答-------------------- wcf 配置及调用方法
http://download.csdn.net/detail/sunny007sun/3802412
web service 和WCF调用类似! --------------------编程问答--------------------
...你编一段我这程序传上去挂10分我下来看看行吗 我着急用= = --------------------编程问答--------------------
把你你需求说明白!!!!! --------------------编程问答-------------------- abc.在之后在智能提示里找生成的代理类。。应该是 什么 什么soapclient
代理类定义在Reference.cs中。 --------------------编程问答--------------------
作业是一个winform程序 里面有个listview控件 里面的数据要从这个abc这里调用 按一个键调用那种 private void button2_Click(object sender, EventArgs e)
{
listView1.Items.Clear();
abc.GetEnableSendAgentCompletedEventArgs
}
那个类namespace Ciming.Exchanger.Domain
{
public enum AgentStatusEnum
{
过时未更新 = 1,
节点通 = 2,
数据库不通 = 3
}
[Serializable]
public class AgentStatus:IComparer<AgentStatus>
{
public string AgentId;
public string AgentName;
public string AgentUrl;
//更新时间
public DateTime UpdateDate;
//目前数据池的长度
public int DataLength;
public string StatusType;
public override bool Equals(object obj)
{
if (obj != null)
{
if (obj is AgentStatus)
{
if (((AgentStatus) obj).AgentId == this.AgentId)
{
return true;
}
}
}
return false;
}
public int Compare(AgentStatus x, AgentStatus y)
{
if (x==null)
{
return -1;
}
if (y==null)
{
return 1;
}
return x.DataLength.CompareTo(y.DataLength);
}
}
}
服务引用的地址是http://10.10.10.249:9900/GetEnableSendAgentService/metadata
写到 private void button2_Click(object sender, EventArgs e)
{
listView1.Items.Clear();
写到这里 那个怎么调用 麻烦写一下 快要交了= =没时间研究了...
}
--------------------编程问答--------------------
他就是智能生成的里面没有Service1Client= =我表示WCF这块就完全没学过。。。就是偶尔这么一用 啥都不知道 --------------------编程问答-------------------- private void button2_Click(object sender, EventArgs e)
{
// listview样式设置
listView1.GridLines = true;
listView1.FullRowSelect = true;
listView1.View = View.Details;
listView1.Scrollable = false;
listView1.MultiSelect = false;
listView1.HeaderStyle = ColumnHeaderStyle.Clickable;
// 表头设置
listView1.Columns.Add("ID", 50, HorizontalAlignment.Center);
listView1.Columns.Add("姓名", 50, HorizontalAlignment.Center);
listView1.Columns.Add("性别", 50, HorizontalAlignment.Center);
listView1.Columns.Add("年龄", 50, HorizontalAlignment.Center);
listView1.Columns.Add("学校", 150, HorizontalAlignment.Center);
listView1.Columns.Add("联系电话", 150, HorizontalAlignment.Center);
List<Model> strlist = new List<Model>();///Model 你的实体
strlist = aaaaa.getModel();///aaaaa你的web service 接口中的方法
listView1.Items.Clear();
foreach (Modeli in strlist )
{
ListViewItem item = new ListViewItem();
item.SubItems.Clear();
item.Text = i.Id;
item.SubItems.Add(i.Name);
item.SubItems.Add(i.Gender);
item.SubItems.Add(i.Age.ToString());
item.SubItems.Add(i.University);
item.SubItems.Add(i.Phone);
listView1.Items.Add(item);
}
} --------------------编程问答--------------------
1添加服务器应用
2、声明调用方法
////调用web service服务
public static string WcfAddress;///web service地址
public static WebServiceDataSoapClient GetServiceClient()
{
EndpointAddress address = new EndpointAddress(new Uri(WcfAddress + "WebServiceData.asmx"));////WebServiceData.asmx web service文件名
WebServiceDataSoapClient Cilent = new WebServiceDataSoapClient("WebServiceDataSoap", address);
foreach (OperationDescription op in Cilent.Endpoint.Contract.Operations)
{
DataContractSerializerOperationBehavior dataContractBehavior = op.Behaviors.Find<DataContractSerializerOperationBehavior>() as DataContractSerializerOperationBehavior;
if (dataContractBehavior != null)
{
dataContractBehavior.MaxItemsInObjectGraph = 2147483647;
}
}
return Cilent;
}
3、声明服务
WebServiceDataSoapClient client = GetServiceClient();
4、调用接口方法
objct obj= client.getModel()///getModel接口中的方法名
--------------------编程问答--------------------
=.=还是不会 算了...我放弃了= = --------------------编程问答--------------------
EndpointAddress是啥= =我的实体又是啥...貌似有点难 算了。。。谢谢你了 --------------------编程问答-------------------- lz有时间看看这个,http://blog.csdn.net/artech/article/details/4610449 --------------------编程问答-------------------- 学习下这个 你一定会做的~~
从原理 到实战代码 --------------------编程问答-------------------- public AgentStatus[] GetEnableSendAgent() {
object[] results = this.Invoke("GetEnableSendAgent", new object[0]);
return ((AgentStatus[])(results[0]))
private void button2_Click(object sender, EventArgs e)
{
listView1.Items.Clear();
ServiceReference1.GetEnableSendAgentService Cilent = new ServiceReference1.GetEnableSendAgentService();
Cilent.GetEnableSendAgent()
foreach ( )
{
ListViewItem item = new ListViewItem();
item.SubItems.Clear();
item.Text = i.AgentId;
item.SubItems.Add(i.AgentName);
item.SubItems.Add(i.AgentUrl);
item.SubItems.Add(i.UpdateDate.ToString("yyyy-MM-dd"));
listView1.Items.Add(item);
}
} --------------------编程问答-------------------- private void button2_Click(object sender, EventArgs e)
{
listView1.Items.Clear();
ServiceReference1.GetEnableSendAgentService Cilent = new ServiceReference1.GetEnableSendAgentService();
Cilent.GetEnableSendAgent()//这里这里怎么写
foreach ( )// 这里怎么写
{
ListViewItem item = new ListViewItem();
item.SubItems.Clear();
item.Text = i.AgentId;
item.SubItems.Add(i.AgentName);
item.SubItems.Add(i.AgentUrl);
item.SubItems.Add(i.UpdateDate.ToString("yyyy-MM-dd"));
listView1.Items.Add(item);
}
} --------------------编程问答-------------------- 自己顶一下= =
补充:.NET技术 , C#