silverlight4访问wcf

1. wcf项目的web.config同一目录下需要有两个文件:
a. ClientAccessPolicy.xml
<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
b. crossdomain.xml
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" />
<allow-http-request-headers-from domain="*" headers="*" />
</cross-domain-policy>
2. 在silverlight项目中添加服务引用后,在xaml.cs中编写如下代码,
public partial class MainPage : UserControl
{
//实例化服务对象
WS.Service1Client ser = new WS.Service1Client();
public MainPage()
{
InitializeComponent();
//给服务方法调用注册事件
ser.GetDataCompleted += new EventHandler<WS.GetDataCompletedEventArgs>(ser_GetDataCompleted);
}
//事件方法
void ser_GetDataCompleted(object sender, WS.GetDataCompletedEventArgs e)
{
txtTo.Text = e.Result;
}
//引发方法
private void btnSearch_Click(object sender, RoutedEventArgs e)
{
ser.GetDataAsync(int.Parse(txtFrom.Text));
}
}
Tags: 

延伸阅读

最新评论

发表评论