ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:1.49MB ,
资源ID:7920595      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-7920595.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(WCF与Linq To SQL与Silverlight架构例子打印版文档格式.docx)为本站会员(b****4)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

WCF与Linq To SQL与Silverlight架构例子打印版文档格式.docx

1、1.添加Dll引用2.添加ClientAcessPolicy.xmlaccess-policy policyallow-from http-request-headers=*domain uri=/allow-fromgrant-toresource path=/ include-subpaths=true/grant-to/policy/cross-domain-access/access-policy3.添加跨域访问服务类using System;using System.Collections.Generic;using System.Linq;using System.Text;nam

2、espace WCFServer System.ServiceModel.ServiceContract public interface IcrossDomainService System.ServiceModel.OperationContract System.ServiceModel.Web.WebGet(UriTemplate = ClientAccessPolicy.xml) System.ServiceModel.Channels.Message ProvidePolicyFile(); public class crossDomainService : IcrossDomai

3、nService public System.ServiceModel.Channels.Message ProvidePolicyFile() System.IO.FileStream filestream =System.IO.File.Open(ClientAcessPolicy.xml, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.ReadWrite); System.Xml.XmlReader reader = System.Xml.XmlReader.Create(filestrea

4、m); System.ServiceModel.Channels.Message result = System.ServiceModel.Channels.Message.CreateMessage(System.ServiceModel.Channels.MessageVersion.None, , reader); return result;4.添加App.config ?configurationsystem.serviceModelserviceHostingEnvironment aspNetCompatibilityEnabled=behaviorsendpointBehavi

5、orsbehavior name=WCFServer.crossDomainServiceBehaviorwebHttp /behavior/endpointBehaviorsserviceBehaviors/serviceBehaviors/behaviorsservicesservice name=WCFServer.crossDomainServiceendpoint address= behaviorConfiguration= binding=webHttpBinding contract=WCFServer.IcrossDomainService /hostbaseAddresse

6、sadd baseAddress=http:/localhost:8731/baseAddresses/host/service/services/system.serviceModel/configuration(3)设计数据库(4)创建Linq To SQL(5)设计基于Linq To SQL创建数据操作类 public interface ImyDBControl int? addMytable(myTable myTable); List searchMyTable(double y1, double y2); public class myDBControl : ImyDBContr

7、ol public int? addMytable(myTable myTable) myTable.rowID = System.Guid.NewGuid(); using (testDBDataContext db = new testDBDataContext() db.myTable.InsertOnSubmit(myTable); db.SubmitChanges(); return null; public List p.y = y1 & p.y y2).ToList();(1+)完成WCF宿主 public partial class Window1 : Window publi

8、c Window1() InitializeComponent(); System.ServiceModel.ServiceHost crossDomainHost; System.ServiceModel.ServiceHost myDBControlHost; static int byteSize = 2147483647; static bool httpGetEnabled = true; static string serverURL = ; private void button1_Click(object sender, RoutedEventArgs e) crossDoma

9、inHost = new System.ServiceModel.ServiceHost(typeof(CrossDomainService); serverURL = crossDomainHost.BaseAddresses0.AbsoluteUri; crossDomainHost.Open(); satrtServer(myDBControlHost, typeof(myDBControl), typeof(ImyDBControl), ref myDBControlHost); this.button1.Content = 服务运行中 static void satrtServer(

10、string path, Type serviceType, Type serviceInterface, ref System.ServiceModel.ServiceHost host) string url = serverURL + path + host = new System.ServiceModel.ServiceHost(serviceType); /-System.ServiceModel.Description.ServiceMetadataBehavior behavior = new ServiceMetadataBehavior(); behavior.HttpGe

11、tEnabled = httpGetEnabled; behavior.HttpGetUrl = new Uri(url); host.Description.Behaviors.Add(behavior); System.Xml.XmlDictionaryReaderQuotas readerQuotas = new System.Xml.XmlDictionaryReaderQuotas(); readerQuotas.MaxStringContentLength = byteSize; readerQuotas.MaxArrayLength = byteSize; readerQuota

12、s.MaxBytesPerRead = byteSize; System.ServiceModel.BasicHttpBinding basicHttpBinding = new System.ServiceModel.BasicHttpBinding(); basicHttpBinding.ReaderQuotas = readerQuotas; basicHttpBinding.MaxReceivedMessageSize = byteSize; host.AddServiceEndpoint(serviceInterface, basicHttpBinding, url); host.O

13、pen();测试在浏览器中打入8731/8731/myDBControlHost/(6)为Silverlight项目添加WCF引用1.重新创建一个Silverlight项目2.确保上步创建的WCF宿主已运行并已启动3.在Silverlight中引用WCF服务(7)开发Silverlight页面 /Canvas加载事件 private void Canvas_Loaded(object sender, RoutedEventArgs e) /保存按钮不可见 save.Visibility = Visibility.Collapsed; /创建按钮 private void create_Clic

14、k(object sender, RoutedEventArgs e) /清空文本框 x.Text = y.Text = 0 z.Text = System.DateTime.Now.ToString(); /- /保存按钮可见 save.Visibility = Visibility.Visible; /创建按钮不可见 create.Visibility = Visibility.Collapsed; /保存按钮 private void save_Click(object sender, RoutedEventArgs e) /构建一个行对象 myService.myTable row =

15、 new mySilverlight.myService.myTable(); row.x = x.Text; row.y = double.Parse(y.Text); row.z = DateTime.Parse(z.Text); row.rowID = System.Guid.NewGuid(); /- /调用WCF服务完成保存 myService.ImyDBControlClient ser = new mySilverlight.myService.ImyDBControlClient(); /保存完成后事件 ser.addMytableCompleted += new EventH

16、andler(ser_addMytableCompleted); /保存 ser.addMytableAsync(row); /保存按钮不可见 /创建按钮可见 create.Visibility = Visibility.Visible; /保存完成后 void ser_addMytableCompleted(object sender, mySilverlight.myService.addMytableCompletedEventArgs e) MessageBox.Show(添加完成); private void search_Click(object sender, RoutedEve

17、ntArgs e) /查询完成后的返回事件 ser.searchMyTableCompleted += new EventHandler(ser_searchMyTableCompleted); /查询 ser.searchMyTableAsync(double.Parse(y1.Text), double.Parse(y2.Text); /查询完成后 void ser_searchMyTableCompleted(object sender, mySilverlight.myService.searchMyTableCompletedEventArgs e) dg.ItemsSource = e.Result;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2