flex调用webservice中的datatable结果写入datagrid

webservice配置文件

 

<appSettings>
		<add key="sqlConDuke" value="server=10.9.34.88;database=PanoSalado;uid=sa;pwd=123"/>
	</appSettings>

Webservice代码

 

 

 //测试数据库连接
    [WebMethod(Description = "!!!测试数据库连接,链接字符串在web.config中")]
    public bool conectDB()
    {
        strCon = ConfigurationSettings.AppSettings["sqlConDuke"];
        conn = new SqlConnection(strCon);
        try
        {
            conn.Open();
            return true;
        }
        catch (Exception)
        {
            return false;
        }
        finally
        {
            conn.Close();
        }
    }

    [WebMethod(Description = "!!!获得所有数据(DataTable),strTb,eg:PanView")]
    public DataTable getAllDT(string strTb)
    {
        bool ifCon = conectDB();
        if (ifCon)
        {
            string sql_BfCar = "SELECT * FROM " + strTb;
            da = new SqlDataAdapter(sql_BfCar, conn);
            myds = new DataSet();
            da.Fill(myds);
            mydt=myds.Tables[0];
            return mydt;
        }
        else
        {
            return null;
        }
    }

 

Flex代码:

 

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
	<fx:Script>
		<![CDATA[ 
			import mx.collections.ArrayCollection;
			import mx.controls.Alert;
			import mx.rpc.events.FaultEvent;
			import mx.rpc.events.ResultEvent;

			[Bindable]
			public var arr:ArrayCollection=new ArrayCollection();
			
			protected function button1_clickHandler(event:MouseEvent):void
			{
				myWeb.getAllDT("PanView"); //分别为webservice中的方法和参数
			}
			internal function onSuccess(evt:ResultEvent):void
			{
				 arr=this.myWeb.getAllDT.lastResult.Tables.Table.Rows; //Table为webservice中的datatable名字
				 Alert.show(arr.length.toString());
			}

			protected function button2_clickHandler(event:MouseEvent):void
			{
				myWeb.getLinkDTByImgName("PanView","20131019072740-0000150");
			}
			internal function onSuccess1(evt:ResultEvent):void
			{
				arr=this.myWeb.getLinkDTByImgName.lastResult.Tables.Table.Rows;
				Alert.show(arr.length.toString());
			}
			
			internal function onFault(evt:FaultEvent):void
			{
				Alert.show("调用WebService方法失败,详细:" + evt.fault.faultDetail.toString());
			}

		]]>
	</fx:Script>
	<s:layout>
		<s:BasicLayout/>
	</s:layout>
	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
		<s:WebService id="myWeb" wsdl="http://10.19.1.55/serverPano/WebServiceDuke.asmx?WSDL" fault="onFault(event)">
			<s:operation name="getAllDT" result="onSuccess(event)"></s:operation>
			<s:operation name="getLinkDTByImgName" result="onSuccess1(event)"></s:operation>
		</s:WebService>
	</fx:Declarations>
	<mx:DataGrid x="121" y="177" width="737" height="402" id="dg1" dataProvider="{arr}"> 
		<mx:columns>
			<mx:DataGridColumn headerText="ID" dataField="ID"/> <!--webservice中datatable中的字段-->
			<mx:DataGridColumn headerText="ImageName" dataField="ImageName"/>
			<mx:DataGridColumn headerText="LinkGuid" dataField="LinkGuid"/>
		</mx:columns>
	</mx:DataGrid>
	<s:Button x="254" y="82" label="返回所有" click="button1_clickHandler(event)"/>
	<s:Button x="500" y="82" label="按照片名查询" click="button2_clickHandler(event)"/>
</s:Application>



 











 

转载于:https://www.cnblogs.com/riasky/p/3455215.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值