flex3通过fluorinefx跟asp.net进行数据交互
2009-05-03 02:00
676 查看
这几天不太忙把原来的一些小的示例整理一下,这个示例是一个简单的通过fluorinefx与asp.net结合来时间flex连接数据库的.因为一直以来flex+java大家都认为是最好的搭档但是asp.net也是很好的选择,个人认为asp.net的效率要比java的高.好了现在进入正题.
flex部分代码如下:
mxml文件
<?xmlversion="1.0"encoding="utf-8"?>
<mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"creationComplete="fs.GetData();"fontSize="13">
<mx:Script>
<![CDATA[
importmx.collections.ArrayCollection;
importmx.rpc.events.ResultEvent;
importmx.controls.Alert;
//获得数据后的处理函数
publicfunctionGetDataHandle(e:ResultEvent):void
{
//获得的数据绑定至DataGrid组件
dg.dataProvider=e.result.tables.serverInfo.initialDataasArray;
}
//插入数据成功后的处理函数
publicfunctionInsertDataHandle(e:ResultEvent):void
{
//提示插入成功
Alert.show("插入数据成功");
//重新获取数据
fs.GetData();
}
]]>
</mx:Script>
<mx:Panelwidth="474"height="489"title="通知">
<mx:DataGridid="dg">
<mx:columns>
<mx:DataGridColumnheaderText="编号"dataField="0"/>
<mx:DataGridColumnheaderText="标题"dataField="1"/>
<mx:DataGridColumnheaderText="内容"dataField="2"/>
<mx:DataGridColumnheaderText="发布者"dataField="3"/>
</mx:columns>
</mx:DataGrid>
<mx:Canvaswidth="395"height="243">
<mx:Labelx="37"y="27"text="标题"/>
<mx:TextInputx="80"y="25"id="txtTitle"/>
<mx:Labelx="37"y="155"text="发布者"/>
<mx:TextInputx="80"y="153"id="txtPublisher"/>
<mx:Labelx="37"y="53"text="内容"/>
<mx:TextAreax="80"y="55"width="278"height="90"id="txtContent"/>
<mx:Buttonx="121"y="198"label="添加"id="btnInsert"click="fs.InsertData(txtTitle.text,txtContent.text,txtPublisher.text);"/>
</mx:Canvas>
</mx:Panel>
<mx:RemoteObject
destination="fluorine"
id="fs"
source="remoting.GetSQLServer2000Data"
showBusyCursor="true"
>
<mx:method
name="GetData"
result="GetDataHandle(event)"
/>
<mx:method
name="InsertData"
result="InsertDataHandle(event)"
/>
</mx:RemoteObject>
</mx:Application>
flex里的services_config.xml这个文件是一个配置文件就好比asp.net里的webconfig意思差不多吧都是xml结构,这个文件要跟mxml文件放在一个路径下文件内容如下:
<?xmlversion="1.0"encoding="UTF-8"?>
<services-config>
<services>
<serviceid="remoting-service"
class="flex.messaging.services.RemotingService"
messageTypes="flex.messaging.messages.RemotingMessage">
<destinationid="fluorine">
<channels>
<channelref="my-amf"/>
</channels>
<properties>
<source>*</source>
</properties>
</destination>
</service>
</services>
<channels>
<channel-definitionid="my-amf"class="mx.messaging.channels.AMFChannel">
<endpointuri="http://localhost:6199/WebSite2/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
</channel-definition>
</channels>
</services-config>
好了到现在为止flex部分的文件已经完全展现给大家了.
下面是asp.net部分
首先确定在机器里已经安装了fluorinefx,现在fluorinefx已经可以支持在vs2008中使用了
打开vs2008或vs2005以后在就会出现一个fluorinefx的选项,建立好以后就可以通过修改cs代码来实现连接数据库的功能
代码如下:
flex部分代码如下:
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;//引用“System.Data.SqlClient”
usingSystem.Collections;//引用“System.Collections”
usingFluorineFx.Management.Web;
usingFluorineFx;
///<summary>
///GetSQLServer2000Data的摘要说明
///</summary>
namespaceremoting//名称空间,可自定义
{
[RemotingService()]
publicclassGetSQLServer2000Data
{
publicGetSQLServer2000Data()
{
}
publicDataSetGetData()//获得数据库数据
{
SqlConnectionconn=newSqlConnection();//定义“SqlConnnection”类实例
//数据库连接字符串
conn.ConnectionString="DataSource=.;InitialCatalog=School;PersistSecurityInfo=True;UserID=sa;Password=sa";
//定义“SqlCommand”实例,从“Notes”表中取数据
SqlCommandcommand=newSqlCommand("select*fromNotes",conn);
conn.Open();//打开连接
SqlDataAdapterda=newSqlDataAdapter();//定义“SqlDataAdapter”类实例
da.SelectCommand=command;//将“command”值传递给“SqlDataAdapter”的“SelectCommand”属性
DataSetds=newDataSet();//定义“DataSet”类实例
da.Fill(ds,"tables");//取数据
//关闭数据库
conn.Close();
returnds;
}
publicvoidInsertData(stringtitle,stringcontent,stringpublisher)//插入数据
{
SqlConnectionconn=newSqlConnection();//定义“SqlConnnection”类实例
//数据库连接字符串
conn.ConnectionString="DataSource=.;InitialCatalog=School;PersistSecurityInfo=True;UserID=sa;Password=sa";
SqlCommandcommand=newSqlCommand("selectMax(noteId)fromNotes",conn);
conn.Open();//打开连接
SqlDataAdapterda=newSqlDataAdapter();//定义“SqlDataAdapter”类实例
da.SelectCommand=command;//将“command”值传递给“SqlDataAdapter”的“SelectCommand”属性
DataSetds=newDataSet();//定义“DataSet”类实例
da.Fill(ds,"tables");//取数据
stringnewid=(Convert.ToInt32(ds.Tables["tables"].Rows[0][0].ToString())+1).ToString();
command=newSqlCommand("insertintoNotesvalues('"+newid+"','"+title.Trim()+"','"+content.Trim()+"','"+publisher.Trim()+"')",conn);
command.ExecuteNonQuery();
conn.Close();
}
}
}
相关文章推荐
- flex3通过fluorinefx跟asp.net进行数据交互
- flex3通过fluorinefx跟asp.net进行数据交互
- ASP.Net WebAPI与Ajax进行跨域数据交互时Cookies数据的传递
- ASP.Net WebAPI与Ajax进行跨域数据交互时Cookies数据的传递
- ASP.Net中通过Jquery前端对Repeater控件绑定的数据进行操作
- asp.net 前端跟后端通过接口调用实现数据交互(含分页)
- ASP.Net中关于WebAPI与Ajax进行跨域数据交互时Cookies数据的传递
- 微信小程序使用WebService(Asp.net)进行数据交互
- android客户端通过get,post进行数据交互
- Scott Mitchell 的ASP.NET 2.0数据教程之72:对数据访问层进行“连接—命令”级的设置
- ASP.NET - 自定义控件处理页面事件(控件与页面数据交互)的方法
- asp.net线程批量导入数据时通过ajax获取执行状态
- ASP.NET MVC与Sql Server交互, 插入数据
- 【译】ASP.NET MVC 5 教程 - 6:通过控制器访问模型的数据
- ASP.NET Eval如何进行数据“.NET研究”绑定
- 在ASP.NET下用Microsoft Excel进行数据分析与报表
- 能省则省:在ASP.NET Web API中通过HTTP Headers返回数据
- Extjs和Asp.NET后台的数据交互(一) => Newtonsoft.Json 使用简介
- ASP.NET对Excel单元格进行操作并且插入数据
- [翻译]ASP.NET MVC 3 开发的20个秘诀(十)[20 Recipes for Programming MVC 3]:通过关键字进行列表搜索