Flex4.5(as3.0)交互.net操作数据xmlsql数据库.doc_第1页
Flex4.5(as3.0)交互.net操作数据xmlsql数据库.doc_第2页
Flex4.5(as3.0)交互.net操作数据xmlsql数据库.doc_第3页
Flex4.5(as3.0)交互.net操作数据xmlsql数据库.doc_第4页
Flex4.5(as3.0)交互.net操作数据xmlsql数据库.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学习flex的时候发现与后台交互的资料真的难找啊深深感觉难受,想学没机会的感觉;于是自己学会后一定得拿出来大家看下面的都是经过测试成功的自己写的例子;大家一起看下吧 不会的也不用到处找资料了哈(欢迎高手指正):首先用到的xml文件和.net后台文件:url:http:/localhost/Fnet/FlexTr1.aspx内容如下:using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using System.Data.SqlClient;using System.Text;using System.IO;using System.Xml;public partial class FlexTr1 : System.Web.UI.Page StringBuilder ssb = new StringBuilder(); /string paramsstr; protected void Page_Load(object sender, EventArgs e) string sqlconstr; string sqlstr; int pagenum; pagenum = Convert.ToInt32(Request.ParamspageNum); /sqlconstr = ConfigurationManager.ConnectionStringsconnstr.ConnectionString; sqlconstr = ConfigurationSettings.AppSettingsconnstr; SqlConnection conn = new SqlConnection(sqlconstr); /conn.Dispose();/销毁连接池 conn.Open(); DataSet ds = new DataSet(); SqlCommand cmd = new SqlCommand(); if (pagenum 0) sqlstr = select top 8 *from trystr where id not in(select top + (pagenum-1) * 8 + id from trystr); else sqlstr = select top 8 *from trystr ; cmd.CommandText = sqlstr; cmd.Connection = conn; cmd.ExecuteNonQuery(); SqlDataAdapter da = new SqlDataAdapter(cmd);/数据库的连接 da.Fill(ds); conn.Close(); DataTable dt = ds.Tables0; ssb.Append(); ssb.Append(第一列第二列第三列第四列第五列); foreach (DataRow dw in dt.Rows)/将数据库的查询结果输出 ssb.Append(); ssb.Append(); ssb.Append(dwid); ssb.Append(); ssb.Append(); ssb.Append(dwnamestr); ssb.Append(); ssb.Append(); ssb.Append(dwmess); ssb.Append(); ssb.Append(); ssb.Append(dwstr1); ssb.Append(); ssb.Append(); ssb.Append(dwstr2); ssb.Append(); ssb.Append(); Response.Write(ssb.ToString(); Response.End(); /将数据存入xml中, /XmlDocument xmlDoc = new XmlDocument(); /xmlDoc.Load(xml/f1.xml); /xmlDoc.Load(Server.MapPath(xml/f1.xml); /XmlNode node = xmlDoc.SelectSingleNode(/root/ContentData); /Response.Write(node.InnerText); /node.InnerText = ssb.ToString(); /xmlDoc.Save(Server.MapPath(xml/f1.xml); 用到的xml路径(相对于aspx页面):xml/f1.xml内容: 1234654321564321 http:/localhost:1477/WebSite1/xml/f1.xml 测试结果是否传达到2 http:/localhost/Fnet/Default3.aspx 1a b c d 2a b c d 3a b c d 4a b c d 5a b c d 6a b c d 7a b c d 8a b c d 上面显示的xml中的 a b c d的就是数据库中查询出来的结果放置到xml中,也就是通过xml与flex交互,测试成功没有问题注意写路径的时候在后面加上?随机变量 否则ie不刷新最新数据想要试一下xml传输的 可以调用后面.as类中的*方法(有注释)参照mxml主页面的的调用方法用到的数据库就不拿出来了好了一章写不完,下章接着说;好了,废话不多说,接着上一章写:写的as类;(主要用于读取html页面,xml交互、传输接收【get、post】数据【与.net】等等) 名称:UrlGet.as内容:package services.f1 import flash.events.Event; import .URLLoader; import .URLLoaderDataFormat; .URLRequest; .URLRequestMethod; .URLVariables; public class UrlGet public var re:URLRequest=new URLRequest(); public var lo:URLLoader=new URLLoader(); public var vari:URLVariables=new URLVariables(); public var xxml:XML=new XML(); public function UrlGet() ; public functionGetPageTxT(va:URLVariables,url:String,getdata:Function):void if(url!=) re.url=url; re.method=URLRequestMethod.POST; re.data=va; lo.dataFormat=URLLoaderDataFormat.TEXT; lo.addEventListener(Event.COMPLETE,getdata); lo.load(re); public functionGetPageVar(va:URLVariables,url:String,getdata:Function):Object var result:Object; if(url=)return null; else re.url=url; re.method=URLRequestMethod.POST; re.data=va; lo.dataFormat=URLLoaderDataFormat.VARIABLES; lo.addEventListener(Event.COMPLETE,getdata); lo.load(re); return result; public functionGetXml(url:String,getdata:Function):XML var result:Object; re.url=url; lo.dataFormat=URLLoaderDataFormat.TEXT; xxml=XML(lo.addEventListener(Event.COMPLETE,getdata); lo.load(re); return xxml; 主要页面Flex_first.mxml 以及调用上面的类的调用方法(其中用到的主要框架为viewstack)内容如下:xmlns:fx=/mxml/2009 xmlns:s=library://flex/spark xmlns:mx=library://flex/mx xmlns:f1=services.f1.* minWidth=955 minHeight=600 creationComplete=ini() namespace s library://flex/spark; namespace mx library://flex/mx; namespace f1 services.f1.*; s|TextArea.textFlow.li text-align:left; display:inline; importflashx.textLayout.elements.TextFlow; import mx.events.FlexEvent; import services.f1.UrlGet; private var va:URLVariables=new URLVariables(); private function ini():void viewstack1.selectedChild=view_HtmTxt; protected functionpanel1_creationCompleteHandler(event:FlexEvent):void / TODO Auto-generated method stub GetSendMes(getdata1); private functionGetSendMes(getdata:String):void/需要提供方法的名称 var urlget:UrlGet=new UrlGet();/创建公共类对象 var url:String=http:/localhost/Fnet/FlexTr1.aspx?aa=+Math.random();/防止出现浏览器不能及时刷新的现象传递一个随即变量值 switch(getdata) case getdata1: Txt_htm.text=已经准备就绪.请猛击.; break; case btnClick : urlget.GetPageTxT(va,url,getdata1); break; /此处可以继续添加case default: break; private function getdata1(e:Event):void trace(e.target.data); var tf:TextFlow=new TextFlow(); tf=TextConverter.importToFlow(e.target.data,TextConverter.TEXT_FIELD_HTML_FORMAT); Txt_htm.textFlow=tf; private functionbtuClick(e:MouseEvent):void switch(String(e.target.id) case btn_before: if(lab_page.text!=.&lab_page.text!=1) lab_page.text=String(int(lab_page.text)-1); else lab_page.text=1; va.pageNum=int(lab_page.text); break; case btn_next: if(lab_page.text!=.) lab_page.text=String(int(lab_page.text)+1); else lab_page.text=1; va.pageNum=int(lab_page.text); break; default: break; GetSendMes(btnClick); id=viewstack1 x=10 y=6 width=557 height=544 id=view_login width=100% height=100% label=login_ id=panel_login width=557 height=511 title=登陆窗口 importmx.core.MXMLObjectAdapter; import mx.modules.ModuleLoader; private functionconfirm(e:MouseEvent):void label_warning.text=温馨提示: ; if(Input_user.text=|Input_pwd.text=) label_warning.text+=用户名或密码不能为空!; else /firstM.moLoadStr=mainPage.swf; /firstM.loadUrl(Event); /loginMo.loadModule(mainPage.swf); viewstack1.selectedChild=view_HtmTxt;/选定初始化页面 id=Input_user x=165 y=79 width=162/ id=Input_pwd x=164 y=126 width=161/ id=userName x=77 y=79 width=80 height=22 color=#060606 fontSize=15 fontWeight=bold text=用户名:/ id=pwd x=77 y=126 width=75 height=22 color=#000000 fontSize=15 text=登

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论